Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Verificador si donante es compatible para donar sangre, aquí se aplica concatenación de operadores lógicos

import java.util.Scanner;

public class Principal {
    public static void main(String[] args) {
        int edadDonante;
        double pesoDonante;

        Scanner sc = new Scanner(System.in);
        System.out.print("Ingrese la edad del donante: ");
        edadDonante = sc.nextInt();
        System.out.print("Ingrese el peso del donante (en Kg): ");
        pesoDonante = sc.nextDouble();

        if ((edadDonante >= 18 && edadDonante <= 65) && pesoDonante > 50){
            System.out.println("El donante es compatible");
            System.out.println("Motivo: tiene la edad dentro del rango 18 - 65 años y tiene el peso mayor a 50Kg.");
        } else if(!(edadDonante >= 18 && edadDonante <= 65) && pesoDonante > 50){
            System.out.println("El donante no es compatible");
            System.out.println("Motivo: Debe tener entre 18 y 65 años.");
        } else if ((edadDonante >= 18 && edadDonante <= 65) && !(pesoDonante > 50)){
            System.out.println("El donante no es compatible");
            System.out.println("Motivo: Debe pesar mas de 50Kg.");
        }else {
            System.out.println("El donante no es compatible");
            System.out.println("Motivo: No tiene la edad adecuada y tampoco el peso.");
        }



    }
}
1 respuesta

Hola Manuel, espero que estés bien

¡Tu código se ve muy bien y cumple con los requisitos del ejercicio! Has utilizado correctamente las estructuras condicionales para verificar si un donante es compatible para donar sangre. Aquí tienes un pequeño resumen de lo que hace tu programa:

  1. Solicita al usuario la edad y el peso del donante.
  2. Verifica si el donante tiene entre 18 y 65 años y pesa más de 50 kg.
  3. Imprime un mensaje indicando si el donante es compatible o no, y proporciona el motivo si no lo es.

Tu lógica está bien estructurada y cubre todos los casos posibles. Por ejemplo:

  • Si el donante cumple con ambos criterios, el programa indica que es compatible.
  • Si solo el peso es adecuado, indica que la edad es el problema.
  • Si solo la edad es adecuada, indica que el peso es el problema.
  • Si ninguno de los criterios se cumple, indica que ambos son el problema.

Un pequeño consejo sería asegurarte de que los mensajes de salida sean claros y fáciles de entender, lo cual ya estás haciendo muy bien. ¡Sigue así!

Espero haber ayudado y buenos estudios!