1
resposta

[Projeto] Verificação de compatibilidade de doação de sangue

import java.util.Scanner;

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

        int idade;
        int peso;
        boolean pesoCompativel;
        boolean idadeCompativel;

        System.out.println("Digite a idade do doador:");
        idade = leitor.nextInt();

        System.out.println("Digite o peso do doador (em kg):");
        peso = leitor.nextInt();

        if (idade >= 18 && idade <= 65) {
            idadeCompativel = true;
        } else {
            idadeCompativel = false;
        }

        if (peso > 50) {
            pesoCompativel = true;
        } else {
            pesoCompativel = false;
        }

        if (pesoCompativel && idadeCompativel) {
            System.out.println("O doador é compatível");
        } else if (pesoCompativel && !idadeCompativel) {
            System.out.println("O doador não é compatível");
            System.out.println("MOTIVO: Deve ter entre 18 e 65 anos");
        } else if (!pesoCompativel && idadeCompativel) {
            System.out.println("O doador não é compatível");
            System.out.println("MOTIVO: Deve pesar acima de 50kg");
        } else if (!pesoCompativel && !idadeCompativel) {
            System.out.println("O doador não é compatível");
            System.out.println("MOTIVO: Deve ter entre 18 e 65 anos, e pesar acima de 50kg");
        }

    }
}
1 resposta

Olá, Thais. Tudo bem?

Muito obrigado por compartilhar o seu código aqui com a gente. Parabéns pelo trabalho. Continue com essa dedicação.

Seu código está muito bem organizado e mostra claramente a lógica das verificações de idade e peso. Gostei da forma como você separou cada etapa e foi criteriosa com as mensagens finais. Isso ajuda bastante na legibilidade!

Uma dica interessante para o futuro é usar uma expressão booleana diretamente na declaração da variável, o que deixa o código mais enxuto. Veja este exemplo:


boolean idadeCompativel = idade >= 18 && idade <= 65;
boolean pesoCompativel = peso > 50;

Esse jeito elimina os if desnecessários e o código fica mais limpo.

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