Olá, Hélio! Como vai?
Após analisar o seu código, identifiquei algumas áreas que podem ser aprimoradas.
Observe que a primeira condição é a seguinte: "Se o aluno tiver 18 anos ou mais ou for formado em Inglês." Entretanto, no código, você definiu FORMACAO_ALUNO
como 'Alemão' em vez de 'Inglês' e usou AND
em vez de OR
.
Para esta condição, a estrutura lógica correta seria a seguinte:
(IDADE_ALUNO >= 18 OR FORMACAO_ALUNO = "INGLÊS")
A segunda expressão é: "Se o aluno tiver menos de 18 e for formado em Alemão." Nesta segunda sentença, houve também uma troca de idiomas. O código correto seria:
IDADE_ALUNO < 18 AND FORMACAO_ALUNO = "ALEMÃO"
A combinação de ambas as condições ficaria assim:
(IDADE_ALUNO >= 18 OR FORMACAO_ALUNO = "INGLÊS") OR (IDADE_ALUNO < 18 AND FORMACAO_ALUNO = "ALEMÃO")
Ao avaliarmos se a expressão é verdadeira ou falsa, podemos separá-la em partes:
(Falso OR Verdadeiro) OR (Verdadeiro AND Falso)
Isso resulta em:
(Verdadeiro) OR (Falso)
Dessa forma, podemos verificar que a expressão final é verdadeira.
Espero ter ajudado.
Caso surja alguma dúvida, fico à disposição.
Abraços.
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!