1
resposta

[Projeto] Minha resolução

import java.util.Scanner;

public class VerificacaoComptDoacaoSangue {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.println("Digite a idade do doador: ");
        int idade = scanner.nextInt();
        System.out.println("Digite o peso do doador (em kg): ");
        double peso = scanner.nextDouble();
        scanner.close();

        if (idade >= 18 && idade <= 65 && peso > 50) {
            System.out.println("Compatível!");
        }
        else if ((idade < 18 || idade > 65) && peso <= 50) {
            System.out.println("O doador não é compatível.\nMotivo: Não possui nenhum dos requisitos mínimos.");
        }
        else if (idade < 18 || idade > 65) {
            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.");
        }
    }
}
1 resposta

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!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!