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

Verificacion De Donante

Comparto código public static void main(String[] args) {

    System.out.println("SISTEMA DE VERIFICACIÓN DE DONANTE DE SANGRE");
    Scanner scanner = new Scanner(System.in);

    System.out.print("Ingrese la edad del donante: ");
    int edad = scanner.nextInt();

    System.out.print("Ingrese el peso del donante (en kg): ");
    double peso = scanner.nextDouble();

    boolean edadValida = edad >= 18 && edad <= 65;
    boolean pesoValido = peso > 50;

    if (edadValida && pesoValido) {
        System.out.println("El donante es compatible para donar sangre.");
    } else {
        System.out.println("El donante no es compatible. Motivo:");
        if (!edadValida) {
            System.out.println("- Debe tener entre 18 y 65 años.");
        }
        if (!pesoValido) {
            System.out.println("- Debe pesar más de 50 kg.");
        }
    }
    System.out.println("***CONTINUAR CON VERIFICACION DEL SIGUIENTE DONANTE***");
    scanner.close();
}

}

Respuesta: SISTEMA DE VERIFICACIÓN DE DONANTE DE SANGRE Ingrese la edad del donante: 17 Ingrese el peso del donante (en kg): 49 El donante no es compatible. Motivo:

  • Debe tener entre 18 y 65 años.
  • Debe pesar más de 50 kg. CONTINUAR CON VERIFICACION DEL SIGUIENTE DONANTE

Process finished with exit code 0

1 respuesta

¡Hola! Gracias por compartir tu código. Parece que has implementado un sistema básico para verificar si una persona es elegible para donar sangre, basándote en la edad y el peso. Tu código parece estar funcionando correctamente, ya que valida las condiciones y proporciona retroalimentación adecuada si el donante no cumple con los requisitos.

Aquí hay un par de sugerencias para mejorar o expandir tu programa:

  1. Manejo de excepciones: Considera agregar manejo de excepciones para asegurarte de que el usuario ingrese valores válidos. Por ejemplo, podrías usar un bloque try-catch para manejar entradas no numéricas y evitar que el programa se detenga inesperadamente.

    try {
        System.out.print("Ingrese la edad del donante: ");
        int edad = scanner.nextInt();
    
        System.out.print("Ingrese el peso del donante (en kg): ");
        double peso = scanner.nextDouble();
    
        // Resto del código...
    } catch (InputMismatchException e) {
        System.out.println("Por favor, ingrese un número válido.");
        scanner.next(); // Limpiar el scanner
    }
    
  2. Repetir la verificación: Si deseas verificar múltiples donantes sin reiniciar el programa, podrías envolver tu lógica en un bucle while o do-while y preguntar al usuario si desea verificar otro donante después de cada verificación.

    boolean continuar = true;
    while (continuar) {
        // Lógica de verificación
    
        System.out.print("¿Desea verificar otro donante? (si/no): ");
        String respuesta = scanner.next();
        if (!respuesta.equalsIgnoreCase("si")) {
            continuar = false;
        }
    }
    

Estas mejoras pueden hacer que tu programa sea más robusto y fácil de usar. Espero que estas sugerencias te sean útiles. ¡Espero haber ayudado y buenos estudios!