PROFICIENTE#
Com a versão básica funcionando podemos desenvolver as próximas funcionalidades do nosso sistema. Para isso, vamos seguir as etapas descritas a seguir:
Etapa 1#
Ao finalizar o pedido, precisamos apresentar o valor total da compra para o cliente. Para isso, no arquivo funcoes.py, implemente a função calcula_total que recebe como argumento os dicionários do pedido e estoque e retorna o valor total da compra.
Exemplo:
estoque = {
'carne': {
'quantidade':10,
'preço':9,
'identificador':1
},
'queijo': {
'quantidade':10,
'preço':9,
'identificador':2
}
}
pedido = {'queijo':2 }
print(calcula_total(pedido, estoque))
Saída:
Altere também o código do arquivo programa.py para utilizar a função calcula_total e imprimir a mensagem Valor total: R$VALOR ao término do programa, onde VALOR é o valor total da compra com duas casas decimais. Abaixo segue um exemplo de interação do cliente com o programa:
Seja bem vind@! O que você gostaria de pedir?
CARDÁPIO
[1] Carne: R$9.00
[2] Queijo: R$9.00
[fim] Finalizar pedido
Digite a opção desejada: 1
Informe a quantidade desejada: 2
CARDÁPIO
[1] Carne: R$9.00
[2] Queijo: R$9.00
[fim] Finalizar pedido
Digite a opção desejada: fim
Valor total: R$18.00
Etapa 2#
Nosso sistema precisa efetuar a cobrança da compra. O cliente tem a opção de pagar com cartão de débito, crédito ou vale refeição. Além disso, precisamos saber qual é a bandeira do cartão.
As vendas são armazenadas em um dicionário com estrutura similar ao exemplo abaixo. Note que o dicionário abaixo é apenas um exemplo e seus valores podem variar:
vendas = {
'debito' : {
'visa': 50,
'mastercard':100,
'elo': 150,
'american express': 10
},
'credito': {
'maestro':200,
'hipercard':230.99
},
'refeicao':{
'ticket' : 50.55,
'alelo' : 21.99
}
}
Para esta etapa precisamos implementar a função cobranca que recebe como argumentos o dicionário de vendas, o valor total da compra, método de pagamento (crédito, débito ou refeição) e a bandeira do cartão. A função deve retornar o dicionário das vendas com o valor atualizado de acordo com o método e a bandeira do cartão. Se o método de pagamento ou a bandeira não existirem a função deve criar um novo item no dicionário. Importante: A função deve ser implementada no arquivo funcoes.py.
Exemplo:
vendas = {
'debito' : {
'visa': 50,
'mastercard':100,
'elo': 150,
'american express': 10
},
'credito': {
'maestro':200,
'hipercard':230.99
},
'refeicao':{
'ticket' : 50.55,
'alelo' : 21.99
}
}
print(cobranca(vendas, 19, 'debito', 'visa'))
Saída:
{
'debito' : {
'visa': 69,
'mastercard':100,
'elo': 150,
'american express': 10
},
'credito': {
'maestro':200,
'hipercard':230.99
},
'refeicao':{
'ticket' : 50.55,
'alelo' : 21.99
}
}