linea = linea[:-1].split(",") result = 0 operacion = linea[0] primera_iteracion = True for operando in linea[1:-1]: if primera_iteracion is True: operando1 = int(operando) primera_iteracion = False else: operando1 = result operando2 = int(linea[linea.index(operando) + 1]) if operacion == "suma": result = calcu.suma(operando1, operando2) elif operacion == "resta": result = calcu.resta(operando1, operando2) elif operacion == "multiplica": result = calcu.multiplica(operando1, operando2) elif operacion == "divide": result = calcu.divide(operando1, operando2) else: sys.exit("Error: The first word in each line " + "must be suma, resta," + "multiplica or divide") print("The result of the operation " + operacion + " is " + str(result)) except ZeroDivisionError: sys.exit("Division by zero is not allowed") except FileNotFoundError:
numero = int(numero) lista.append(numero) except ValueError: sys.exit("Error: Not number") if len(lista) == 0: resul = 0 else: resul = int(operaciones[1]) # ["suma", 1, 2, 3, 4, 5] -> 1 operador = operaciones[0] # ["suma", 1, 2, 3, 4, 5] -> "suma" if operador == 'suma': for operando in lista[1:]: op = CalculadoraHija(resul, operando) resul = op.suma() elif operador == 'resta': for operando in lista[1:]: op = CalculadoraHija(resul, operando) resul = op.resta() if operador == 'multiplica': for operando in lista[1:]: op = CalculadoraHija(resul, operando) resul = op.multiplica() elif operador == 'divide': for operando in lista[1:]: op = CalculadoraHija(resul, operando) resul = op.divide() print(resul)
import sys import csv from calcoohija import CalculadoraHija if __name__ == "__main__": try: with open(sys.argv[1]) as csvfile: lector = csv.reader(csvfile) calc1 = CalculadoraHija() for line in lector: acumulador = int(line[1]) if line[0] == "suma": try: 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)
from calcoohija import CalculadoraHija calc = CalculadoraHija() fichero = sys.argv[1] if __name__ == "__main__": with open(fichero, newline='') as File: reader = csv.reader(File) for row in reader: word_Position = 0 if row[0] == "suma": plus = 0 for word in row: if word_Position != 0: plus = calc.suma(plus, int(row[word_Position])) word_Position += 1 print(plus) elif row[0] == "resta": minum = int(row[1]) * 2 for word in row: if word_Position != 0: minum = calc.resta(minum, int(row[word_Position])) word_Position += 1 print(minum) elif row[0] == "multiplica": mult = 1 for word in row: if word_Position != 0: mult = calc.multiplicar(mult, int(row[word_Position])) word_Position += 1
if __name__ == "__main__": with open(sys.argv[1], 'r') as csvfile: fichero = csv.reader(csvfile) calculadora = CalculadoraHija() for line in fichero: primero = line[0] numbers = line[1:] if primero == "suma": resultado = int(line[1]) for number in numbers[1:]: resultado = calculadora.suma(resultado, int(number)) print(resultado) elif primero == "resta": resultado = int(line[1]) for number in numbers[1:]: resultado = calculadora.resta(resultado, int(number)) print(resultado) elif primero == "multiplica": resultado = int(line[1]) for number in numbers[1:]: resultado = calculadora.multiplica(resultado, int(number)) print(resultado) elif primero == "divide": resultado = int(line[1]) for number in numbers[1:]: resultado = calculadora.divide(resultado, int(number))
entrada = csv.reader(fich) for linea in entrada: operandos = linea[1:] try: operandos_int = [float(i) for i in operandos] except ValueError: sys.exit("Error: Non numerical parameters") if len(linea) >= 2: resultado = operandos_int[0] else: resultado = 0 if linea[0] == 'suma': for num in operandos_int[1:]: resultado = calc.suma(resultado, num) elif linea[0] == "resta": for num in operandos_int[1:]: resultado = calc.resta(resultado, num) elif linea[0] == "multiplica": for num in operandos_int[1:]: resultado = calc.multiplica(resultado, num) elif linea[0] == "divide": for num in operandos_int[1:]: resultado = calc.divide(resultado, num) else: print("You writte: 'suma, resta, multiplica o divide'") print(resultado)