domingo, 2 de septiembre de 2018

Calculadora programable

import os
k1 = """





CALCULADORA 
Autor: ROHC 1 Suma +
Lenguaje: Python3 2 Resta -
Ejercicio: Calculadora 1 3 Multiplicación *
Fecha: 30/08/18 4 División /




5 Programada

"""
"""Para el siguiente ejercicio documentar con:
Título
Autor
Fecha
Dividir las partes del programa como quitar el salto de linea en un
Realizar los cometarios necesarios que explique lo que hace cada parte del programa
mostrar un menú con:
Las 4 operaciones ( + - * /)
Verifique los datos para que las operaciones sean validos
El siguiente programa presenta un menú con didtintas operaciones a realiza:
Se comienza por elegir la operación a realizar y se repite esta a hasta dar una respuesta 'N' para no continuar o cometer 3 equivocaciones. Luego elñ usuario puede reelegir operación y comenzar un nuevo ciclo o retirarse de el programa con las respuesta adecuada"""
menu = ["1","2","3","4","5","6","7","8"]
fprog=[]
operandos=[]
cuenta = 0.0
cuentavalor = 0
selector = "S"

  
while selector.upper() == "S":
    os.system("clear")
    n1 = " "
    n2 = " "
    contador = 0
    print (f"{k1}")
    k2 = input ("Seleccione una operación: ")
#================================ SUMA ==========================================
    if k2 == "1" or k2 == "+":
        # Agrega a la lista de funciones la operación de suma
        fprog.append("+")
        suma = 0.0
        print ("                                          Suma")
        while not (n1.isdigit()) or n1.upper() == "N":
            n1=input("Ingrese un numero o 'N' para salir:   %8.2f     " % (suma))
            if n1 == "n" or n1 == "N":
                break
            if contador >= 2:
                break
            try:
                float (n1)
                vlogic = True
                n2 = float(n1)
                n1 = " "
            except:
                vlogic = False
                contador = contador + 1
                print (contador)   
            if vlogic == True:    
                suma = suma + n2
        print("El resultado es: %.2f" %(suma))
       
#================================ RESTA ==========================================
    if k2 == "2" or k2 == "-":
        # Agrega a la lista de funciones la operación de resta
        fprog.append("-")
        cuentavalor = 1
        resta = 0.0
        print ("                                    Diferencia")
        while not (n1.isdigit()) or n1.upper() == "N":
            n1=input("Ingrese un numero o 'N' para salir:   %8.2f     " % (resta))
            if n1 == "n" or n1 == "N":
                break
            if contador >= 2:
                break
            try:
                float (n1)
                vlogic = True
                n2 = float(n1)
               
                n1 = " "
            except:
                vlogic = False
                contador = contador + 1
                print (contador, resta)
               
            if vlogic == True:
                if cuentavalor == 1:
                    cuentavalor= 2
                    resta = n2
                else:     
                    resta = resta - n2
        print("El resultado es: %.2f" %(resta))
#================================ PRODUCTO ===================================
    if k2 == "3" or k2 == "*":
        # Agrega a la lista de funciones la operación de producto
        fprog.append("*")
        cuentavalor = 1
        multiplica = 0.0
        print ("                                      Producto")
        while not (n1.isdigit()) or n1.upper() == "N":
            n1=input("Ingrese un numero o 'N' para salir:   %8.2f     " % (multiplica))
            if n1 == "n" or n1 == "N":
                break
            if contador >= 2:
                break
            try:
                float (n1)
                vlogic = True
                n2 = float(n1)
               
                n1 = " "
            except:
                vlogic = False
                contador = contador + 1
                print (contador, multiplica)
               
            if vlogic == True:
                if cuentavalor == 1:
                    cuentavalor= 2
                    multiplica = n2
                else:     
                    multiplica = multiplica * n2
        print("El resultado es: %.2f" %(multiplica))
#======================================== DIVISIÓN ========================================
    if k2 == "4" or k2 == "/":
        # Agrega a la lista de funciones la operación de cociente
        fprog.append("/")
        cuentavalor = 1
        dividendo = 0.0
        divisor = 0.0
        print ("                                      Cociente")
        while not (n1.isdigit()) or n1.upper() == "N" or float(n1)==0.0:
            if cuentavalor == 1:
                n1=input("Ingrese un número  o 'N' para salir:   %8.2f     " % (dividendo))
            else:
                n1=input("Ingrese el divisor o 'N' para salir:   %8.2f     " % (dividendo))
            if n1 == "n" or n1 == "N":
                break
                             
            try:
                float (n1)
                vlogic = True
                n2 = float(n1)
                if n2 == 0.0:
                    contador = contador +1
                n1 = " "
            except:
                vlogic = False
                contador = contador + 1
            if contador >= 2:
                break
               
            if vlogic == True:
                if cuentavalor == 1:
                    dividendo = n2
                    # print (dividendo)
                elif n2 != 0.0:
                    divisor = n2
                    cuentavalor = 1
                    # print (divisor)
                    dividendo = dividendo / divisor
                else:
                    print ("No se puede dividir por 0")
                    while not (n1.isdigit()) or n1.upper() == "N" or float(n1)==0.0:
                        n1=input("Ingrese el divisor o 'N' para salir:   %8.2f     " % (dividendo))
                        if n1 == "n" or n1 == "N":
                            break
                        if float(n1) == 0.0:
                            contador = contador +1
                        if contador >= 2:
                                break
                        try:
                            float (n1)
                            vlogic = True
                            n2 = float(n1)
                            divisor = n2
                            n1 = " "
                        except:
                            vlogic = False
                            contador = contador + 1
                            if contador >= 2:
                                break
                            print (contador, dividendo)
                        if divisor != 0.0:   
                            dividendo = dividendo / divisor
                cuentavalor = 2           
        if divisor != 0.0:       
            print("El resultado es: %.2f" %(dividendo))
        else:
            print ("No se puede dividir por 0")                 
#================================ FUNCIÓN PROGRAMADA 1 ===========================
    if k2 == "5":
        vlogic = False
        lfprog = len(fprog)
        loper = lfprog + 1
       
       
        for i in range(loper):
            n1=input("Ingresar operando: ")
            while vlogic == False:
                try:
                    float (n1)
                    vlogic = True
                    n2 = float(n1)
                    n1 = " "
                except:
                    vlogic = False
            if vlogic == True:       
                operandos.append(n2)
                vlogic = False   
           
        h = 0 
        j = 1
        cuenta = operandos[h]
        while h <= (lfprog-1):
            if fprog[h] == "+":
                cuenta = cuenta + float(operandos[j])
            elif fprog[h] == "-":   
               
                cuenta = cuenta - float(operandos[j])
            elif fprog[h] == "*":   
               
                cuenta = cuenta * float(operandos[j])
            elif fprog[h] == "/":   
               
                if float(operandos[j]) == 0.0:
                    while not (n1.isdigit()) or n1.upper() == "N" or n2 == 0.0:
                        n1=input("Ingrese un nuevo divisor o 'N' para salir:   %8.2f     " % (division))
                        if n1 == "n" or n1 == "N":
                            break
                        if contador >= 3:
                            reak
                        try:
                            float (n1)
                            vlogic = True
                            n2 = float(n1)
                            operandos.insert(j, n2)
                            n1 = " "
                        except:
                            vlogic = False
                            contador = contador + 1
                cuenta = cuenta / float(operandos[j])
            h = h+1
            j = j+1
             
        print ("Funciones: ", fprog)
        print ("Operandos: ", operandos)      
        print ("Resultado: ", cuenta)
        if k2 == "7":
            operandos = []
            fprog = []
            cuenta = 0.0
    selector = input("¿Desea continuar? (s/n): ")

domingo, 26 de agosto de 2018

# Ejercios de practica del 23/08/2018
# 1)Realizar programa que solicite 2 numeros diga cuales el mayor
#   Divida el mayor por el menor y muestre en formato de numero real
#   (de coma flotante) el resultado, con 2 decimales
# 2)Generar un programa que haga el mismo cometido que el programa anterior 5 veces
# 3)Generar programa que ingrese datos en una lista
# 4)Realizar programa que muestre el siguiente menú:
#   1 Triángulo     (área = (base * altura )/2)
#   2 Cuadrado      (área = (lado * lado) o lado**2
#   3 Pentágono     (área = (base * apotema) * 5 o (perímetro por apotema = altura)
#   4 Círculo       (área =  pi * radio**2
   
#   solicite la entrada de una opción y calcule el área seleccionada
# 5)Generar un programa que haga el mismo cometido que el programa anterior 5 veces
# 3)Generar programa que ingrese las áreas en una lista

# ====================================================================================
# Ejercico 1
import os
# Limpia pantalla en Linux
os.system("clear")
# Limpia pantalla en Windows
# os.system("cls")

v1 = float(input("Ingrese un valor: "))
v2 = float(input("Ingrese un valor: "))

if v2 > v1:
    k = v2
    v2 = v1
    v1 = k
result = v1/v2
print ("La división entre %.2f y %.2f es %.2f" % (v1, v2, result)) 
input()


# ====================================================================================
# Ejercico 2
import os
# Limpia pantalla en Linux
os.system("clear")
# Limpia pantalla en Windows
# os.system("cls")
for i in range(5):
    v1 = float(input("Ingrese un valor: "))
    v2 = float(input("Ingrese un valor: "))
    if v2 > v1:
        k = v2
        v2 = v1
        v1 = k
    result = v1/v2
    print ("La división entre %.2f y %.2f es %.2f" % (v1, v2, result)) 
    input()
   
# ====================================================================================   
# Ejercico 3
import os
# Limpia pantalla en Linux
os.system("clear")
# Limpia pantalla en Windows
# os.system("cls")
divisores= []
for i in range(5):
    v1 = float(input("Ingrese un valor: "))
    v2 = float(input("Ingrese un valor: "))
    if v2 > v1:
        k = v2
        v2 = v1
        v1 = k
    result = v1/v2
    r = ("%.2f" % (result))
    divisores.append(r)
    print ("La división entre %.2f y %.2f es %.2f" % (v1, v2, result)) 
    input() 
for h in range(len(divisores)):
    print (divisores[h])
   
# ====================================================================================

# Ejercico 5
import os, math
# Limpia pantalla en Linux
os.system("clear")
# Limpia pantalla en Windows
# os.system("cls")
#==============================================================================
men = """ Seleccione una figura geométrica
    1 Triángulo
    2 Cuadrado
    3 Paralelogramo
    4 Pentágono
    5 Círculo """
print (f"{men}")
fig = int (input("      Opción: "))
print (" ")
if fig == 1:
    print ("SUPERFICIE DEL TRIÁNGULO")
    base = float(input("Ingrese  la   base   del  triángulo: "))
    altu = float(input("Ingrese  la   altura  del triángilo: "))
    sup = (base * altu)/2
    print ("La  superficie  del  triángulo  es: %.2f" % (sup))
elif fig == 2:
    print ("SUPERFICIE DEL CUADRADO")
    base = float(input("Ingrese   el  lado   del   cuadrado: "))
    sup = base **2
    print ("La  superficie   del  cuadrado  es: %.2f" % (sup))
elif fig == 3:
    print ("SUPERFICIE DEL PARALELOGRAMO")
    base = float(input("Ingrese la  base del  paralelogramo: "))
    altu = float(input("Ingrese la altura del paralelogramo: "))
    sup = base * altu
    print ("La superficie del paralelogramo es: %.2f" % (sup))
elif fig == 4:
    print ("SUPERFICIE DEL PENTÁGONO")
    base = float(input("Ingrese  la   base   de  pentágono: "))
    altu = float(input("Ingrese  la apotema  del pentśgono: "))
    sup = ((base * altu)/2)*5
    print ("La  superficie  del  pentágono es: %.2f" % (sup))
elif fig == 5:
    print ("SUPERFICIE DEL CÍRCULO")
    base = float(input("Ingrese  el  radio  del círculo: "))
    b = base**2
    altu = math.pi
    sup = base * altu
    print ("La  superficie   del  círculo es: %.2f" % (sup))
else:
    print ("Elija opción valida") 

# ====================================================================================
# Ejercico 5
import os, math
# Limpia pantalla en Linux
os.system("clear")
# Limpia pantalla en Windows
# os.system("cls")
for i in range(5):
#==============================================================================
    men = """ Seleccione una figura geométrica
    1 Triángulo
    2 Cuadrado
    3 Paralelogramo
    4 Pentágono
    5 Círculo """
    print (f"{men}")
    fig = int (input("      Opción: "))
    print (" ")
    if fig == 1:
        print ("SUPERFICIE DEL TRIÁNGULO")
        base = float(input("Ingrese  la   base   del  triángulo: "))
        altu = float(input("Ingrese  la   altura  del triángilo: "))
        sup = (base * altu)/2
        print ("La  superficie  del  triángulo  es: %.2f" % (sup))
    elif fig == 2:
        print ("SUPERFICIE DEL CUADRADO")
        base = float(input("Ingrese   el  lado   del   cuadrado: "))
        sup = base **2
        print ("La  superficie   del  cuadrado  es: %.2f" % (sup))
    elif fig == 3:
        print ("SUPERFICIE DEL PARALELOGRAMO")
        base = float(input("Ingrese la  base del  paralelogramo: "))
        altu = float(input("Ingrese la altura del paralelogramo: "))
        sup = base * altu
        print ("La superficie del paralelogramo es: %.2f" % (sup))
    elif fig == 4:
        print ("SUPERFICIE DEL PENTÁGONO")
        base = float(input("Ingrese  la   base   de  pentágono: "))
        altu = float(input("Ingrese  la apotema  del pentśgono: "))
        sup = ((base * altu)/2)*5
        print ("La  superficie  del  pentágono es: %.2f" % (sup))
    elif fig == 5:
        print ("SUPERFICIE DEL CÍRCULO")
        base = float(input("Ingrese  el  radio  del círculo: "))
        b = base**2
        altu = math.pi
        sup = base * altu
        print ("La  superficie   del  círculo es: %.2f" % (sup))
    else:
        print ("Elija opción valida") 
   

# ====================================================================================
# Ejercico 6
import os, math
# Limpia pantalla en Linux
os.system("clear")
# Limpia pantalla en Windows
# os.system("cls")
areas= []
for i in range(5):
#==============================================================================
    men = """ Seleccione una figura geométrica
    1 Triángulo
    2 Cuadrado
    3 Paralelogramo
    4 Pentágono
    5 Círculo """
    print (f"{men}")
    fig = int (input("      Opción: "))
    print (" ")
    if fig == 1:
        print ("SUPERFICIE DEL TRIÁNGULO")
        base = float(input("Ingrese  la   base   del  triángulo: "))
        altu = float(input("Ingrese  la   altura  del triángilo: "))
        sup = (base * altu)/2
        print ("La  superficie  del  triángulo  es: %.2f" % (sup))
    elif fig == 2:
        print ("SUPERFICIE DEL CUADRADO")
        base = float(input("Ingrese   el  lado   del   cuadrado: "))
        sup = base **2
        print ("La  superficie   del  cuadrado  es: %.2f" % (sup))
    elif fig == 3:
        print ("SUPERFICIE DEL PARALELOGRAMO")
        base = float(input("Ingrese la  base del  paralelogramo: "))
        altu = float(input("Ingrese la altura del paralelogramo: "))
        sup = base * altu
        print ("La superficie del paralelogramo es: %.2f" % (sup))
    elif fig == 4:
        print ("SUPERFICIE DEL PENTÁGONO")
        base = float(input("Ingrese  la   base   de  pentágono: "))
        altu = float(input("Ingrese  la apotema  del pentśgono: "))
        sup = ((base * altu)/2)*5
        print ("La  superficie  del  pentágono es: %.2f" % (sup))
    elif fig == 5:
        print ("SUPERFICIE DEL CÍRCULO")
        base = float(input("Ingrese  el  radio  del círculo: "))
        b = base**2
        altu = math.pi
        sup = base * altu
        print ("La  superficie   del  círculo es: %.2f" % (sup))
    else:
        print ("Elija opción valida") 
   
    superficie = ("%.2f" % (sup))
    areas.append(superficie)
      
 
#===============================================================================
print (" ")
print ("Supreficies calculadas: ")
for h in range(len(areas)):
    print ("La superficie,",h+1, "es",areas[h])