Commit 3213eb98 authored by DELGADO VALENCIA, JORGE's avatar DELGADO VALENCIA, JORGE 💀
Browse files

versión espero que definitiva

parent b712005b
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys
class Calculadora():
def sumar(self, o1, o2):
if o1 < 0 or o2 < 0:
print("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:
print("OperadorNoSoportado")
if __name__ == "__main__":
miCalculadora = Calculadora()
try:
resultado = miCalculadora.operar(sys.argv[1], int(sys.argv[2]), int(sys.argv[3]))
except OperadorNoSoportado:
print('Operación sólo puede ser sumar o restar.')
else:
print(resultado)
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys
class Calculadora():
def sumar(self, o1, o2):
if o1 < 0 or o2 < 0:
print("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:
print("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()
file = open(sys.argv[1])
for line in file:
line = line.rstrip()
lista = line.split(',')
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)
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys
import csv
class Calculadora():
def sumar(self, o1, o2):
if o1 < 0 or o2 < 0:
print("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:
print("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)
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys
class Calculadora():
def sumar(self, o1, o2):
if o1 < 0 or o2 < 0:
print("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:
print("Introduzca operación correcta")
# instanciar la clase
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:
return Calculadora().operar(cuenta, o1, o2)
if __name__ == "__main__":
miCalculadora = CalculadoraHija()
try:
resultado = miCalculadora.operar(sys.argv[1], int(sys.argv[2]), int(sys.argv[3]))
except OperadorNoSoportado:
print('Operación sólo puede ser sumar o restar.')
else:
print(resultado)
sumar,1,2,3,4,5
restar,31,6,4,3,2,1
multiplicar,1,3,5
dividir,300,10,2
sumar,1,2,3,4,5
restar,31,6,4,3,2,1
multiplicar,1,3,5
dividir,300,10,2
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment