Olá, Filipe! Como vai?
Parabéns pela resolução da atividade!
Observei que você explorou o uso de condicionais para verificar critérios de compatibilidade com Java, utilizou muito bem o operador lógico para combinar requisitos e ainda compreendeu a importância da estrutura de decisão para fornecer mensagens claras ao usuário. Continue postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.
Uma dica interessante para o futuro é simplificar a lógica utilizando variáveis auxiliares. Assim:
boolean idadeValida = idade >= 18 && idade <= 65;
boolean pesoValido = peso > 50;
if (idadeValida && pesoValido) {
System.out.println("Compatível!");
} else if (!idadeValida && !pesoValido) {
System.out.println("O doador não é compatível.\nMotivo: Não possui nenhum dos requisitos mínimos.");
} else if (!idadeValida) {
System.out.println("O doador não é compatível.\nMotivo: Deve ter entre 18 e 65 anos.");
} else {
System.out.println("O doador não é compatível.\nMotivo: Deve possuir no mínimo 50 kg.");
}
Isso faz a verificação de forma mais organizada e melhora a legibilidade do código.
Fico à disposição! E se precisar, conte sempre com o apoio do fórum.
Abraço e bons estudos!
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!