1
resposta

Desafio: Verificação de desconto

Dados necessários:
Idade do cliente
Informação se o cliente é estudante (Sim ou Não)

Algoritmo:
Iniciar o sistema
Solicitar a idade do cliente
Ler a idade informada
Perguntar se o cliente é estudante
Ler a resposta do cliente
Verificar as condições:
Se a idade for menor que 18
ou
Se o cliente for estudante
Se alguma das condições for verdadeira:
Exibir a mensagem:
“Cliente tem direito à meia-entrada.”
Caso contrário:
Exibir a mensagem:
“Cliente não tem direito à meia-entrada.”
Encerrar o sistema

1 resposta

Olá, Rafaela! Como vai?

Parabéns pela resolução do desafio! O seu algoritmo em linguagem natural ficou simplesmente perfeito. Você estruturou o passo a passo com muita clareza, cobrindo desde a entrada de dados (captura da idade e do status de estudante) até o processamento das condições e a exibição da saída correta para o usuário.

Gostaria de destacar um acerto crucial no seu raciocínio que é o coração desse exercício: o uso do operador lógico OU (representado pelo termo "Se alguma das condições for verdadeira").


O Poder do Operador Lógico OU (OR)

Na lógica de programação, o operador OU é generoso. Para que o bloco inteiro seja aceito e o cliente ganhe o benefício, basta que apenas uma das regras seja atendida.

No seu algoritmo, existem três caminhos possíveis para o cliente ter direito à meia-entrada:

  1. O cliente tem menos de 18 anos, mas não é estudante. (Ganha a meia pela idade)
  2. O cliente tem mais de 18 anos, mas é estudante. (Ganha a meia pelo status)
  3. O cliente tem menos de 18 anos e também é estudante. (Ganha a meia por ambos)

O único cenário em que ele cai no seu "Caso contrário" é se ambas as perguntas tiverem respostas falsas (maior de idade e não estudante).


Transformando em Pseudocódigo

Para dar o próximo passo no seu aprendizado de Pensamento Computacional, veja como o seu roteiro em linguagem natural se transforma em um pseudocódigo estruturado, prontinho para ser programado em qualquer linguagem do mercado:

{
    Escreva("Digite a idade do cliente:");
    Leia(idade);
    
    Escreva("O cliente é estudante? (Sim/Não):");
    Leia(eh_estudante);

    // Utilizamos o operador '|' ou a palavra 'OU' para conectar as condições
    Se (idade < 18 ou eh_estudante == "Sim") 
    {
        Escreva("Cliente tem direito à meia-entrada.");
    }
    Senão 
    {
        Escreva("Cliente não tem direito à meia-entrada.");
    }
}

A sua habilidade de quebrar um problema do mundo real em regras lógicas sequenciais mostra que você pegou muito bem o espírito do Pensamento Computacional. Continue compartilhando suas práticas aqui no fórum!

Espero que possa ter lhe ajudado!