1
resposta

Como o código voltar a funcionar

Pessoal, tenho uma dúvida, tô fazendo um menu de sanduíches, a pessoa digita um número correspondente e o código vai funcionando, porém caso o usuário digitar um número inexiste, eu queria colocar para voltar o menu, como faço?

1 resposta

Fala Matheus, tudo jóia?

Te recomendo a dar um olhada no laço de repetição While, onde o código vai ficar rodando enquanto a condição passada for verdadeira. Por exemplo no seu caso, você tem uma base de dados onde contém 5 diferentes tipos de sanduíches, e pergunta ao usuário qual lanche ele quer conforme a numeração do lanche, nesse caso o nosso cardápio é o seguinte:

1** - X-Frango **2 - X-Bacon 3** - X-Salada **4 - X-Tudo 5 - X-Burger

E no código ficará assim:

cardapio = {1:'X-Frango', 2:'X-Bacon', 3:'X-Salada', 4:'X-Tudo', 5:'X-Burger'}
n = 0

while n == 0:

    lanche_solicitado = int(input('Digite o número do lanche em que deseja comer: '))

    if lanche_solicitado in cardapio:

        print('Pedido aceito! Seu {} ficará pronto em 30 minutos'.format(cardapio[lanche_solicitado]))
        break

    else:

        print("Nos desculpe! Não temos esse lanche em nosso cardápio :(")
        continue

Consegue perceber que criei uma variável que possui como valor o número zero? É apenas para termos um valor para condicionar no While, percebe também que logo abaixo no while eu disse ao meu programa que enquanto a variável n possuir como valor o número zero que ele continue perguntando ao usuário qual lanche ele quer comer?

E logo abaixo eu disse ao meu programa que se tiver o lanche solicitado pelo usuário na minha base de dados, que ele retorne uma mensagem dizendo que o pedido foi aceito e também o nome do lanche e depois para o código com o break.

Mas se não tiver, que retorne uma mensagem informando ao usuário que não há aquele lanche no cardápio, e que o meu programa deve continuar rodando com o continue.

Espero ter ajudado :)