Mundo em Python

Máquina de Bebidas Terminal

MENU = {
"Coca-Cola": {
"custo": 1.5,
},
"Fanta": {
"custo": 2.5,
},
"Água": {
"custo": 3.0,
}
} recursos = {
"Coca-Cola": 20,
"Fanta": 20,
"Água": 20,
} dinheiro = 0

def verificar_recursos(escolha_bebida):
if recursos[escolha_bebida] <= 0:
print(f"Desculpe, {escolha_bebida} está esgotado.")
return False
return True

def deduzir_recursos(escolha_bebida):
recursos[escolha_bebida] -= 1

def processar_moedas():
total = 0
total += float(input("Quantas moedas de 5 centimos? ")) * 0.05
total += float(input("Quantas moedas de 10 centimos? ")) * 0.1
total += float(input("Quantas moedas de 20 centimos? ")) * 0.2
total += float(input("Quantas moedas de 50 centimos? ")) * 0.5
total += float(input("Quantas moedas de 1 Euro? ")) * 1
total += float(input("Quantas moedas de 2 Euro? ")) * 2

return round(total, 2) def processar_transação(bebida, moedas):
sucesso = False
custo_bebida = MENU[bebida]['custo']
if custo_bebida > moedas:
print("Desculpe, não é suficiente dinheiro. Dinheiro devolvido.")
return sucesso
elif custo_bebida <= moedas:
sucesso = True
troco = round(moedas - custo_bebida, 2)
print(f"Aqui está {troco} € de troco.")
global dinheiro
dinheiro += custo_bebida
return sucesso def menu_principal():
maquina_ligada = True
while maquina_ligada:
escolha_menu = input("O que você gostaria? (Coca-Cola/Fanta/Água): ")
if escolha_menu == 'Coca-Cola' or escolha_menu == 'Fanta' or escolha_menu == 'Água':
if not verificar_recursos(escolha_menu):
continue
else:
moedas_usuario = processar_moedas()
if processar_transação(escolha_menu, moedas_usuario):
deduzir_recursos(escolha_menu)
print(f"Aqui está o seu {escolha_menu}, Aproveite! ")
elif escolha_menu == 'desligar':
print("A máquina agora será desligada.")
maquina_ligada = False
quit()
elif escolha_menu == 'relatório':
print(f"Coca-Cola: {recursos['Coca-Cola']}")
print(f"Fanta: {recursos['Fanta']}")
print(f"Água: {recursos['Água']}")
print(f"Dinheiro: {dinheiro} €") menu_principal()
0