for operline in operlist: currentline = separarlista( operline) # separamos una linea en una nueva lista currentoper = currentline[0] currentline.pop(0) # Devuelve operación a realizar y la elimina indice = 1 while currentline[ indice] != '\n': #iteramos en los operandos hasta fin de linea preindice = indice - 1 if preindice == 0: oper1 = int(currentline[preindice]) else: oper1 = result oper2 = int(currentline[indice]) if currentoper == 'suma': result = operaciones.plus(oper1, oper2) elif currentoper == 'resta': result = operaciones.minus(oper1, oper2) elif currentoper == 'multiplica': result = operaciones.mult(oper1, oper2) elif currentoper == 'divide': result = operaciones.div(oper1, oper2) else: sys.exit( "Operaciones permitidas: suma, resta, division, multiplicacion" ) indice = indice + 1 print(result)
if elementos[0] == "suma": try: for operando in elementos[2:]: resultado = calculadora.sum(resultado, int(operando)) print(resultado) except ValueError: print("Un valor es valido") elif elementos[0] == "resta": try: for operando in elementos[2:]: resultado = calculadora.rest(resultado, int(operando)) print(resultado) except ValueError: print("Un valor no es valido") elif elementos[0] == "multiplica": try: for operando in elementos[2:]: resultado = calculadora.mult(resultado, int(operando)) print(resultado) except ValueError: print("Un valor no es valido") elif elementos[0] == "divide": try: for operando in elementos[2:]: resultado = calculadora.div(resultado, int(operando)) print(resultado) except ValueError: print("Un valor no es valido") else: print("Las operaciones son: suma, resta, multiplica y divide")
import csv from calcoohija import CalculadoraHija #Clase que contiene operaciones básicas aritméticas operaciones = CalculadoraHija() #functions: plus,minus,mult y div if __name__ == "__main__": with open('operar.csv') as fich: operlist = csv.reader(fich) for currentline in operlist: currentoper = currentline[0] operandos = currentline[1:] result = int(operandos[0]) indice = 1 while indice < len(operandos): oper2 = int(operandos[indice]) if currentoper == 'suma': result = operaciones.plus(result, oper2) elif currentoper == 'resta': result = operaciones.minus(result, oper2) elif currentoper == 'multiplica': result = operaciones.mult(result, oper2) elif currentoper == 'divide': result = operaciones.div(result, oper2) else: sys.exit( "Operaciones permitidas: suma, resta, division, multiplicacion" ) indice = indice + 1 print(result)
for valor in line[2:]: acumulador = calc1.suma(acumulador, int(valor)) print(acumulador) except ValueError: print("Un valor en la suma no es valido") elif line[0] == "resta": try: for valor in line[2:]: acumulador = calc1.resta(acumulador, int(valor)) print(acumulador) except ValueError: print("Un valor en la resta no es valido") elif line[0] == "multiplica": try: for valor in line[2:]: acumulador = calc1.mult(acumulador, int(valor)) print(acumulador) except ValueError: print("Un valor en la multiplicación no es valido") elif line[0] == "divide": try: for valor in line[2:]: acumulador = calc1.div(acumulador, int(valor)) print(acumulador) except ValueError: print("Un valor en la división no es valido") else: print("Operacion invalida") except IOError: sys.exit("No existe el fichero indicado")
primera_iteracion = True for operando in operandos[:-1]: if primera_iteracion is True: operando1 = int(operandos[0]) operando2 = int(operandos[1]) primera_iteracion = False else: operandos = operandos[1:] operando1 = int(result) operando2 = int(operandos[1]) if operador == "suma": result = (calchija.plus(operando1, operando2)) elif operador == "resta": result = (calchija.minus(operando1, operando2)) elif operador == "multiplica": result = (calchija.mult(operando1, operando2)) elif operador == "divide": result = (calchija.div(operando1, operando2)) else: sys.exit("Error: La operación sólo puede ser suma" + "resta, multiplica o divide") print("El resultado es " + str(result)) except ValueError: sys.exit("Error: Non numerical parameters") except ZeroDivisionError: sys.exit("Division by zero is not allowed")
op_aux = result2 print('El resultado de la resta es: ' + str(result2)) elif operacion == 'multiplica': op_aux = 1 for op_final in operandos: result3 = Mi_Calcu.mult(op_aux, int(op_final)) op_aux = result3 print('El resultado de la division es: ' + str(result3)) elif operacion == 'divide': op_aux = int(operandos[0]) try: for op_final in operandos[1:]: result4 = Mi_Calcu.div(op_aux, int(op_final)) op_aux = result4 print('El resultado de la division es: ' + str(result4)) except ZeroDivisionError: sys.exit("Division by zero is not allowed") else: sys.exit('ERROR')