Beispiel #1
0
def calculate(operations_line):
    calcoo = CalculadoraHija()
    method, numbers = convert_line(operations_line)
    # Check if the method exists in the class
    if method not in dir(CalculadoraHija):
        raise SystemExit('Error: Operation unsupported')
    calcoo.ans = numbers[0]  # Temporarily assigns the first number to result
    for number in numbers[1:]:  # Skip 1st number assigned to ans
        getattr(calcoo, method)(calcoo.ans, number)
    calcoo.show()
Beispiel #2
0
#!/usr/bin/python3
# -*- coding: utf-8 -*-

import sys
from calcoohija import CalculadoraHija

calcu = CalculadoraHija()

if __name__ == "__main__":
    try:

        fichero = open(str(sys.argv[1]))
        lineas = fichero.readlines()
        fichero.close()

        for linea in lineas:

            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])
Beispiel #3
0
# -*- coding: utf-8 -*-

import sys
from calcoohija import CalculadoraHija  #Clase que contiene operaciones básicas aritméticas


def separarlista(cadena):
    """"""
    newlist = cadena.split(',')
    lastelem = newlist[-1].split('\n')
    newlist[-1] = lastelem[0]
    newlist.append('\n')
    return newlist


operaciones = CalculadoraHija()  #functions: plus,minus,mult y div

if __name__ == "__main__":
    fich = open('operar.txt', 'r')
    operlist = fich.readlines(
    )  # guardamos las operaciones del fichero en una lista
    fich.close

    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
Beispiel #4
0
#!/usr/bin/python3
# -*- coding: utf-8 -*-

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')
Beispiel #5
0
#!/usr/bin/python3
# -*- coding: utf-8 -*-

import csv
import sys
from calcoo import Calculadora
from calcoohija import CalculadoraHija

with open(sys.argv[1], newline='') as csv_archivo:
    entrada = csv.reader(csv_archivo)
    for line in entrada:
        operador = line[0]
        operandos = line[1:]
        result = int(operandos[0])
        for op in operandos[1:]:
            if operador == 'suma':
                result = Calculadora(result, int(op)).plus()
            elif operador == 'resta':
                result = Calculadora(result, int(op)).minus()
            elif operador == 'multiplica':
                result = CalculadoraHija(result, int(op)).multiply()
            elif operador == 'divide':
                result = CalculadoraHija(result, int(op)).division()

        print(result)
Beispiel #6
0
            try:
                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()
Beispiel #7
0
#!/usr/bin/python3
# -*- coding: utf-8 -*-

import sys

import csv

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)
Beispiel #8
0
#!/usr/bin/python3
# -*- coding: utf-8 -*-

import sys
from calcoohija import CalculadoraHija

if __name__ == "__main__":
    nombre_fichero = sys.argv[1]
    try:
        fichero = open(nombre_fichero)
    except IOError:
        sys.exit("No existe el fichero indicado")
    calculadora = CalculadoraHija()

    for line in fichero.readlines():
        elementos = line.split(',')
        resultado = int(elementos[1])
        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")
Beispiel #9
0
#!/usr/bin/env python3
# -*- coding: utf-8 -*-

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:]:
Beispiel #10
0
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys
import csv

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
Beispiel #11
0
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Fri Sep 28 12:36:31 2018

@author: victor
"""
import sys
from calcoohija import CalculadoraHija

if __name__ == "__main__":

    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":
Beispiel #12
0
#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import sys
import csv
from calcoohija import CalculadoraHija

calchija = CalculadoraHija()

if __name__ == "__main__":
    try:
        texto = []

        with open(sys.argv[1]) as Fich:
            fich = csv.reader(Fich)
            for linea in fich:
                elemento = ", ".join(linea)
                texto.append(elemento)

        for linea in texto:
            linea = linea.split(",")
            operador = linea[0]
            operandos = linea[1:]
            print(linea)

            result = 0
            primera_iteracion = True
            for operando in operandos[:-1]:

                if primera_iteracion is True:
                    operando1 = int(operandos[0])
Beispiel #13
0
#!/usr/bin/python3
# -*- 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])
Beispiel #14
0
# -*- coding: utf-8 -*-

import csv
import sys

from calcoohija import CalculadoraHija

if len(sys.argv) != 2:
    sys.exit("Úsalo así: python3 calcplusplus.py fichero")

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)
Beispiel #15
0
#!/usr/bin/env python2
# -*- coding: utf-8 -*-
"""
@author: aesteban

"""
import sys

from calcoohija import CalculadoraHija

Mi_Calcu = CalculadoraHija()

fich = open(sys.argv[1], 'r')
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
Beispiel #16
0
# -*- coding: utf-8 -*-

import sys
import csv
import os.path as path
from calcoohija import CalculadoraHija

if __name__ == "__main__":

    if len(sys.argv) != 2:
        sys.exit("You writte: 'python3 calcplusplus.py <fichero>'")

    if not path.exists(sys.argv[1]):
        sys.exit("Name file incorrect")

    calc = CalculadoraHija()

    with open(sys.argv[1], 'r') as fich:
        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