Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
DELGADO VALENCIA, JORGE
ptavi-p2
Commits
a90ecb86
Commit
a90ecb86
authored
Oct 09, 2019
by
DELGADO VALENCIA, JORGE
💀
Browse files
Delete calcplusplus.py
parent
de07fd69
Changes
1
Hide whitespace changes
Inline
Side-by-side
calcplusplus.py
deleted
100644 → 0
View file @
de07fd69
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import
sys
import
csv
class
OperadorNoSoportado
(
Exception
):
pass
class
Calculadora
():
def
sumar
(
self
,
o1
,
o2
):
if
o1
<
0
or
o2
<
0
:
raise
IntentoDeSumarNumerosNegativos
else
:
return
o1
+
o2
def
restar
(
self
,
o1
,
o2
):
return
o1
-
o2
def
operar
(
self
,
cuenta
,
o1
,
o2
):
if
cuenta
==
"sumar"
:
return
self
.
sumar
(
o1
,
o2
)
elif
cuenta
==
"restar"
:
return
self
.
restar
(
o1
,
o2
)
else
:
raise
OperadorNoSoportado
class
CalculadoraHija
(
Calculadora
):
def
multiplicar
(
self
,
o1
,
o2
):
return
o1
*
o2
def
dividir
(
self
,
o1
,
o2
):
try
:
return
o1
/
o2
except
ZeroDivisionError
:
print
(
"No se puede dividir por cero"
)
def
operar
(
self
,
cuenta
,
o1
,
o2
):
if
cuenta
==
"multiplicar"
:
return
self
.
multiplicar
(
o1
,
o2
)
elif
cuenta
==
"dividir"
:
return
self
.
dividir
(
o1
,
o2
)
else
:
# estilo python2
# super().operar(cuenta, o1, o2)
return
Calculadora
().
operar
(
cuenta
,
o1
,
o2
)
if
__name__
==
"__main__"
:
miCalculadora
=
CalculadoraHija
()
with
open
(
sys
.
argv
[
1
])
as
csvFile
:
file
=
csv
.
reader
(
csvFile
)
for
lista
in
file
:
operador
,
op1
,
op2
,
resto_num
=
lista
[
0
],
lista
[
1
],
lista
[
2
],
lista
[
3
:]
resultado
=
miCalculadora
.
operar
(
operador
,
int
(
op1
),
int
(
op2
))
for
numero
in
resto_num
:
resultado
=
miCalculadora
.
operar
(
operador
,
resultado
,
int
(
numero
))
print
(
resultado
)
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment