top of page

Python

Informe

Código en Python

print("¡El Carrizo!")
dinero = float(input("Hola, indique el dinero que lleva.\n"))
DINERO_INICIAL = dinero
total = 0
pedido = []

Tallarín_saltado = 40
Causa_cóctel_de_langostinos  = 45
cuatro_quesos = 65

extra_queso = 15
jarra_chicha = 12.50
porcion_de_arroz = 5.50
papas_fritas = 7

# Título del programa
print("-> CARTA <-\n")

# Bucle infinito (True) para platos - Número de ejecuciones indeterminadas
while True:
   # Menú de platos
    print(f"1 - Tallarín saltado - {Tallarín_saltado}$")
    print(f"2 - Causa cóctel_de langostinos - {Causa_cóctel_de_langostinos}$")
    print(f"3 - Cuatro quesos - {cuatro_quesos}$")
    
   # Almacena la elección del usuario
    eleccion = int(input("Hola, por favor, seleccione su orden con un número de opción.\n"))

    # Se calcula el cambio y el total, se indica el plato elegido, se añade a la lista
    match eleccion:
        case 1:
            print(f"Ha elegido Tallarín saltado.\nTotal a pagar {Tallarín_saltado}$.")
            dinero -= Tallarín_saltado
            print(f"Le quedan {round(dinero,2)}$.")
            total += Tallarín_saltado
            pedido.append(f"Tallarín_saltado - {Tallarín_saltado}$")
            break
        case 2:
            print(f"Ha elegido Causa_cóctel_de_langostinos.\nTotal a pagar {Causa_cóctel_de_langostinos}$.")
            dinero -= Causa_cóctel_de_langostinos
            print(f"Le quedan {round(dinero,2)}$.")
            total += Causa_cóctel_de_langostinos
            pedido.append(f"Causa_cóctel_de_langostinos - {Causa_cóctel_de_langostinos}$")
            break
        case 3:
            print(f"Ha elegido la pizza cuatro quesos.\nTotal a pagar {cuatro_quesos}$.")
            dinero -= cuatro_quesos
            print(f"Le quedan {round(dinero,2)}$.")
            total += cuatro_quesos
            pedido.append(f"Cuatro quesos - {cuatro_quesos}$")
            break
        case _:
            print(f"Opción incorrecta. Seleccione una opción del 1 al 3.")

# Bucle infinito (True) para guarniciones - Número de ejecuciones indeterminadas            
while True:
   # Menú de ingredientes
    print(f"1 - Extra de queso - {extra_queso}$")
    print(f"2 - jarra chicha - {jarra_chicha}$")
    print(f"3 - porcion de arroz - {porcion_de_arroz}$")
    print(f"4 - papas fritas  - {papas_fritas }$")
    print(f"5 - No añadir nada extra y pagar.")
    
    # Almacena la elección del usuario
    eleccion = int(input("Si desea alguna guarnicion, selecciónelo.\n"))
    
    # Se calcula el cambio y el total, se indican las ordenes elegidas, 
    # se añaden a la lista...
    match eleccion:
        case 1:
            print(f"Ha elegido extra de queso.\nExtra a pagar {extra_queso}$.")
            dinero -= extra_queso
            total += extra_queso
            print(f"Total a pagar: {total}$.")
            print(f"Le quedan {round(dinero,2)}$.")
            pedido.append(f"Extra de queso - {extra_queso}$")
        case 2:
            print(f"Ha elegido jarra chicha.\nExtra a pagar {jarra_chicha}$.")
            dinero -= jarra_chicha
            total += jarra_chicha
            print(f"Total a pagar: {total}$.")
            print(f"Le quedan {round(dinero,2)}$.")
            pedido.append(f"jarra_chicha - {jarra_chicha}$")
        case 3:
            print(f"Ha elegido porcion de arroz.\nExtra a pagar {porcion_de_arroz}$.")
            dinero -= porcion_de_arroz
            total += porcion_de_arroz
            print(f"Total a pagar: {total}$.")
            print(f"Le quedan {round(dinero,2)}$.")
            pedido.append(f"porcion_de_arroz - {porcion_de_arroz}$")
        case 4:
            print(f"Ha elegido papas fritas.\nExtra a pagar {papas_fritas}$.")
            dinero -= papas_fritas
            total += papas_fritas
            print(f"Total a pagar: {total}$.")
            print(f"Le quedan {round(dinero,2)}$.")
            pedido.append(f"papas_fritas - {papas_fritas}$")
        case 5:
            print("De acuerdo, no se añade nada extra.")
            break
        case _:
            print(f"Opción incorrecta. Seleccione una opción del 1 al 5.")

# Un condicional para determinar si le llega el dinero al usuario con su pedido.
# Si le llega, se ejecuta el if y le saca el ticket con todo lo pedido.
if total <= DINERO_INICIAL:
    print("\n--- SU PEDIDO ---")

    print(f"El total  de su pedido es: {total}$.")
    print(f"Su cambio: {dinero}$.\n")

    for i in pedido:
        print(f"-{i}.")
         
    print("\n!Buen Provecho¡")
bottom of page