Lógica, perguntado por carinedockhorn03, 3 meses atrás

Enunciado: Imagina-se que você e sua equipe foram contratados por um restaurante que serve feijoada para desenvolver a solução de software. Você ficou encarregado da parte de retirar pedido por parte do cliente.
O valor que a empresa cobra por feijoada é dado pela seguinte equação:
total=(volume*opção)+adional(is)
Em que cada uma das variáveis que compõe o preço total é quantizada da seguinte maneira
*IMAGEM*
Elabore um programa em Python que:
1. Pergunte o volume (em ml).Se digitar um valor não numérico e/ou volume for menor/maior que o limite aceito repetir a pergunta;
2. Pergunte a opção da feijoada. Se digitar uma opção não válida deve repetir a pergunta
3. Pergunte o acompanhamento. Deve-se perguntar se o usuário quer mais um acompanhamento até digitar a opção 0
4. Encerre o total a ser pago com base na equação desse enunciado;
5. Deve-se codificar uma função volumeFeijoada (EXIGÊNCIA 1 de 3);
o Deve-se perguntar dentro da função o volume da porção (em ml);
o Deve-se ter um if/else ou if/elif ou if/else/elif para verificar se o usuário não digitou um volume fora da faixa com que o restaurante trabalha;
o Deve-se ter try/except para o caso do usuário digitar um valor não numérico;
o Deve-se retornar o valor em (RS) conforme a Quadro 1
6. Deve-se codificar uma função opcaoFeijoada (EXIGÊNCIA 2 de 3);
o Deve-se perguntar dentro da função a opção desejada;
o Deve-se ter um if/elif/else para verificar as opções possíveis ou não;
o Deve-se retornar o multiplicador conforme o Quadro 2
7. Deve-se codificar uma função acompanhamentoFeijoada (EXIGÊNCIA 3 de 3);
o Deve-se perguntar dentro se deseja ou não mais algum acompanhamento
o Deve-se ter um if/elif/else para verificar as opções possíveis ou não;
o Deve-se retornar o multiplicador conforme o Quadro 3
8. Colocar um exemplo de SAIDA DE CONSOLE um pedido com volume, opção e 2 acompanhamentos válidos
9. Colocar um exemplo de SAIDA DE CONSOLE com o tratamento de erro quando digitado um valor não numérico é digitado e uma opção não permitida no menu opção de feijoada

Soluções para a tarefa

Respondido por thiagodossantos315
0

Resposta:

funcao volumeFeijoada()

   enquanto verdadeiro

       tente

           volume <- leia_real("Informe o volume da porção de feijoada (em ml): ")

           se volume < 500 ou volume > 2000 então

               escreva("O volume deve estar entre 500 e 2000 ml.")

               continue

           fim_se

           interrompa

       exceto

           escreva("O volume deve ser um número.")

   fim_enquanto

   se volume <= 1000 então

       retorne 30

   senao, se volume <= 1500 então

       retorne 40

   senao

       retorne 50

   fim_se

fim_funcao

funcao opcaoFeijoada()

   enquanto verdadeiro

       opcao <- leia_texto("Informe a opção desejada (1-tradicional, 2-light, 3-vegetariana): ")

       se opcao == "1" então

           retorne 1

       senao, se opcao == "2" então

           retorne 1.2

       senao, se opcao == "3" então

           retorne 1.5

       senao

           escreva("Opção inválida.")

   fim_enquanto

fim_funcao

funcao acompanhamentoFeijoada()

   total <- 0

   enquanto verdadeiro

       acompanhamento <- leia_texto("Deseja algum acompanhamento? (1-couve, 2-farofa, 3-queijo, 0-não) ")

       se acompanhamento == "1" então

           total <- total + 5

       senao, se acompanhamento == "2" então

           total <- total + 3

       senao, se acompanhamento == "3" então

           total <- total + 2

       senao, se acompanhamento == "0" então

           interrompa

       senao

           escreva("Opção inválida.")

   fim_enquanto

   retorne total

fim_funcao

volume <- volumeFeijoada()

opcao <- opcaoFeijoada()

acompanhamento <- acompanhamentoFeijoada()

total <- volume * opcao + acompanhamento

escreva("O total a ser pago é R$", total, ".")

Exemplo de SAIDA DE CONSOLE:

// Informe o volume da porção de feijoada (em ml): 1200

// Informe a opção desejada (1-tradicional, 2-light, 3-vegetariana): 1

// Deseja algum acompanhamento? (1-couve, 2-farofa, 3-queijo, 0-não) 2

// Deseja algum acompanhamento? (1-couve, 2-farofa, 3-queijo, 0-não) 3

// Deseja algum acompanhamento? (1-couve, 2-farofa, 3-queijo, 0-não) 0

// O total a ser pago é R$55.0.

// Exemplo de tratamento de erro:

// Informe o volume da porção de feijoada (em ml): abc

// O volume deve ser um número.

// Informe o volume da porção de feijoada (em ml): 1500

// Informe a opção desejada (1-tradicional, 2-light, 3-vegetariana): 4

// Opção inválida.

// Informe a opção desejada (1-tradicional, 2-light, 3-vegetariana): 1

// Deseja algum acompanhamento? (1-couve, 2-farofa, 3-queijo, 0-não) 0

// O total a ser pago é R$40.0.

Perguntas interessantes