2
respostas

[Dúvida] DESAFIO- CALC. PEDIDOS.

Eae gente, tudo bem?
mais um desafio, dessa vez Calculando Pedidos

Imagem criada no POWER POINT
Insira aqui a descrição dessa imagem para ajudar na acessibilidade

DE FORMA PRATICA E DIRETA QUE O DESAFIO PEDE:

INÍCIO
preco_hamburguer -12.00
preco_batata - 7.00
preco_refrigerante- 5.00

LEIA qtd_hamburguer
LEIA qtd_batata
LEIA qtd_refrigerante

total_hamburguer← qtd_hamburguer * preco_hamburguer
total_batata ← qtd_batata * preco_batata
total_refrigerante ← qtd_refrigerante * preco_refrigerante

total_pedido ← total_hamburguer + total_batata + total_refrigerante

ESCREVA "TOTAL A PAGAR: R$", total_pedido

FIM

Pergunta:
Em casos assim eu poderia criar um "espaço" pra adicionar mais cardapio. Desse jeito estaria correto? (Traduzindo pra um pseudocódigo): Deixando o "Adicionar" na frente?

ADICIONAR cardapio: ("Hambúrguer", 12.00, 0)
ADICIONAR cardapio: ("Batata frita", 7.00, 0)
ADICIONAR cardapio: ("Refrigerante", 5.00, 0)
ADICIONAR cardapio: ("Água", 3.00, 0) um novo item por exemplo

Observaçao
No final do algoritmo " total_pedido ← total_hamburguer + total_batata + total_refrigerante"
dá um alívio pq se o cliente pedir 1 hamburguer apenas, o algoritmo somaria 12+0+0 ou seja eu não preciso adicionar mais nada no algoritmo que ele já entende. Pode parecer óbvio mas é bom só dizer "soma" e ele somar kkkk e não precisar dizer mais nada.
Mas quando a gente cria algoritmo usando o código real mesmo, precisaria explicar que zero é igual a nada..?

2 respostas

Oii Lavinia, tudo bem?

Que exercício bem resolvido! Sua lógica está correta e você já foi além do que o desafio pede, o que é ótimo.

Sobre a ideia de criar um "espaço" para adicionar mais itens ao cardápio: sim, você está no caminho certo. O que você está descrevendo se chama lista (ou array, dependendo da linguagem). Cada entrada do seu cardapio seria um conjunto de informações relacionadas: nome, preço e quantidade. Em pseudocódigo, fica exatamente como você montou.

Agora, uma vantagem grande de usar lista é que o algoritmo fica genérico: não importa se tem 3 ou 30 itens, o cálculo do total funciona do mesmo jeito, percorrendo cada entrada da lista e somando preco * quantidade.

Sobre sua observação final: sim, quando a quantidade é 0, o resultado daquele item na soma é 0, então ele não interfere no total. Você não precisa tratar isso separadamente porque 0 * qualquer_valor = 0. Em código real, esse comportamento é o mesmo. Não é preciso dizer "se for zero, ignore": a matemática já resolve.

O ponto em que o código real exigiria atenção é outro: garantir que o usuário não informe um valor inválido (como uma letra no lugar de número, ou quantidade negativa). Isso é feito com validação de entrada, que é um conceito que aparece mais à frente nos estudos de lógica.

Para continuar praticando esse tipo de raciocínio com listas e laços de repetição (que são exatamente o que você precisaria para percorrer um cardápio de tamanho variável):

Conte com a Alura para evoluir seus estudos. Em caso de dúvidas, fico à disposição.

Bons estudos!

Sucesso

Imagem da comunidade

Oi Victor!
obrigada pelo elogio!
Gosto de exercitar a mente e ir além. Sou grata pela análise, pelo esclarecimento das dúvidas e pelas recomendações desses cursos.