Olá, João Pedro! Como vai?
Parabéns por concluir mais um desafio de lógica! O seu algoritmo para o sistema de pedidos da lanchonete ficou muito bem estruturado passo a passo. Você seguiu as etapas fundamentais da programação de computadores de forma sequencial: Definição de constantes/preços $\rightarrow$ Interação com o usuário $\rightarrow$ Processamento/Cálculo $\rightarrow$ Saída de dados.
Assim como no desafio anterior da média acadêmica, o seu raciocínio lógico está correto, mas se fôssemos rodar esse pseudocódigo em uma máquina, ele apresentaria três bugs clássicos de sintaxe e atribuição.
Ajustar esses pontos agora vai fazer você decolar quando migrar para linguagens de programação reais. Vamos analisar o que precisa de ajuste:
Os Detalhes que Precisam de Correção
1. Nomes de variáveis com espaços em branco
No início, você declarou: batata frita = 7;. Os computadores não conseguem entender variáveis separadas por espaço, pois eles acham que são dois comandos diferentes.
- A solução: Una as palavras usando letras maiúsculas ou sublinhado (snake_case), como você fez muito bem nas variáveis de quantidade (ex:
batata_frita).
2. A regra da Atribuição (Revisão da direita para a esquerda)
Assim como no exercício anterior, as linhas de cálculo foram escritas de forma invertida:
qtd_hamburguer * hamburguer = total_hamburguer;
total_hamburguer + total_batata + total_refri = valor_total;
O sinal de igual (=) joga o resultado do que foi calculado na direita para a variável que está na esquerda. O correto é isolar a variável que vai receber o valor antes do sinal.
- O correto:
total_hamburguer = qtd_hamburguer * hamburguer;
3. Exibição de texto literal vs. Variável
Na última linha, você escreveu: Escreva("O valor total é: valor_total");.
Do jeito que está dentro das aspas, o computador vai ler tudo como texto bruto e vai imprimir literalmente a palavra "valor_total" na tela, em vez de mostrar o número calculado.
- A solução: Separe o texto explicativo da variável real (geralmente usando uma vírgula ou sinal de concatenação).
O Algoritmo Corrigido e Perfeito
Aplicando essas correções e ajustando um pequeno detalhe na linha da batata (onde você multiplicou por batata mas a variável original chamava-se batata frita), o seu pseudocódigo fica 100% blindado:
{
// Definição dos preços (Corrigido o nome da batata)
hamburguer = 12;
batata_frita = 7;
refrigerante = 5;
Escreva("Qual a quantidade de hamburguer, batata frita e refrigerante você deseja (nessa ordem)?");
Leia(qtd_hamburguer, qtd_batata, qtd_refri);
// CORREÇÃO: Atribuição da direita para a esquerda
total_hamburguer = qtd_hamburguer * hamburguer;
total_batata = qtd_batata * batata_frita;
total_refri = qtd_refri * refrigerante;
valor_total = total_hamburguer + total_batata + total_refri;
// CORREÇÃO: Separando o texto literal da variável para exibir o número na tela
Escreva("O valor total é: ", valor_total);
}
Visualizando o Pipeline de Dados
Para ajudar a fixar o conceito, todo programa de computador funciona como um misturador de dados, onde as entradas do teclado passam por uma esteira de processamento e geram uma saída:
Ajustar esses detalhes de sintaxe mostra que você está prestando atenção em como a máquina interpreta as instruções. Continue com essa excelente dedicação nos desafios do fórum!
Espero que possa ter lhe ajudado!