Ejemplo n.º 1
0
    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)
Ejemplo n.º 2
0
from calcoohija import CalculadoraHija

ddp = CalculadoraHija()

with open('fichero.csv','r') as d
	lines = csv.lines(d)

	for row in lines:
		trozo=row.split(',')
		resultado=int(trozo[1])

		if (row[:row.find(',')]) == "suma":
			
			for n in range(2,len(trozo)):
				resultado = ddp.plus(resultado, int(trozo[n]))
			print(resultado)

		elif (row[:row.find(',')]) == "resta":
			
			for n in range(2,len(trozo)):
				trozo=row.split(',')
				resultado = ddp.minus(resultado, int(trozo[n]))
			print(resultado)

		elif (row[:row.find(',')]) == "multiplica":

			for n in range(2,len(trozo)):
				trozo=row.split(',')
				resultado = ddp.mult(resultado, int(trozo[n]))
			print(resultado)
Ejemplo n.º 3
0
import sys

from calcoohija import CalculadoraHija

ddp = CalculadoraHija()

if __name__ == "__main__":
	
	try:
		operando1 = int(sys.argv[1])
		operando2 = int(sys.argv[3])
	except ValueError:
		sys.exit("Error: Non numerical parameters")

	if sys.argv[2] == "suma":
		result = ddp.plus(operando1, operando2)
	elif sys.argv[2] == "resta":
		result = ddp.minus(operando1, operando2)
	elif sys.argv[2] == "multiplica":
		result = ddp.mult(operando1, operando2)
	elif sys.argv[2] == "divide":
		if operando2 != 0:
			result = ddp.divide(operando1, operando2)
		else:
			sys.exit("Error: Division by zero is not allowed")
	else:
		sys.exit('Operación sólo puede ser sumar, restar, multiplicar 			o dividir')

	print(result)
Ejemplo n.º 4
0
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)
Ejemplo n.º 5
0
    mi_calcu = CalculadoraHija()
    fich = open(sys.argv[1], "r")
    lista = fich.readlines()
    fich.close()

    for line in lista:
        listasin = line.split(",")
        listasin[-1] = listasin[-1][:-1]
        operacion = listasin[0]
        operandos = listasin[1:]
        print(operandos)

        if operacion == "suma":
            op_aux = int(operandos[0])
            for operando in operandos[1:]:
                op_aux = mi_calcu.plus(op_aux, int(operando))
            print("El resultado de la suma es:", op_aux)

        elif operacion == "resta":
            op_aux = int(operandos[0])
            for operando in operandos[1:]:
                op_aux = mi_calcu.minus(op_aux, int(operando))
            print("El resultado de la resta es:", op_aux)

        elif operacion == "multiplica":
            op_aux = int(operandos[0])
            for operando in operandos[1:]:
                op_aux = mi_calcu.multi(op_aux, int(operando))
            print("El resultado de la multiplicacion es:", op_aux)

        elif operacion == "divide":
Ejemplo n.º 6
0
            result = 0
            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:
Ejemplo n.º 7
0
# -*- coding: utf-8 -*-

import sys
import csv

from calcoohija import CalculadoraHija
Calc_Hija = CalculadoraHija()

with open(sys.argv[1]) as fichero:
    reader = csv.reader(fichero)
    for linea in reader:
        operandos = linea[1:]
        if linea[0] == 'suma':
            operando_aux = 0
            for operado in operandos:
                suma = Calc_Hija.plus(operando_aux, int(operado))
                operando_aux = suma
        elif linea[0] == 'resta':
            operando_aux = int(operandos[0])
            for operando in operandos[1:]:
                operando_aux = Calc_Hija.minus(operando_aux, int(operando))
                resta = operando_aux
        elif linea[0] == 'multiplica':
            operando_aux = 1
            for operado in operandos:
                producto = Calc_Hija.multiplicacion(operando_aux, int(operado))
                operando_aux = producto
        elif linea[0] == 'divide':
            try:
                operando_aux = int(operandos[0])
                for operando in operandos[1:]:
Ejemplo n.º 8
0
lista = fich.readlines()  # lista con todas las lineas
fich.close()

for linea in lista:

    elemento = linea.split(',')  # troceamos la cadena con el argumento  ","
    elemento[-1] = elemento[-1][:-1]  # Eliminamos los saltos de linea (\n)
    operacion = elemento[0]
    operandos = elemento[1:]  # Desde el elemento 1 al final..
    op_aux = int()

    if operacion == 'suma':
        op_aux = 0

        for op_final in operandos:
            result1 = Mi_Calcu.plus(op_aux, int(op_final))
            op_aux = result1

        print('El resultado de la suma es: ' + str(result1))

    elif operacion == 'resta':
        op_aux = int(operandos[0])

        for op_final in operandos[1:]:
            result2 = Mi_Calcu.minus(op_aux, int(op_final))
            op_aux = result2

        print('El resultado de la resta es: ' + str(result2))

    elif operacion == 'multiplica':
        op_aux = 1