Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
1
respuesta

Verificación Donador

import java.util.Scanner;

public class Ifelserepaso {
    public static void main(String[] args) {
        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();


        if (edad >= 18 && edad <= 65 && peso > 50) {
            System.out.println("El donante es compatible para donar sangre.");
        } else {
            System.out.println("El donante no es compatible.");

            if (edad < 18 || edad > 65) {
                System.out.println("Motivo: Debe tener entre 18 y 65 años.");
            }
            if (peso <= 50) {
                System.out.println("Motivo: Debe pesar más de 50 kg.");
            }
        }

        scanner.close();
    }
}
1 respuesta
solución!

Hola, Sebastian.

Tu código parece estar en el camino correcto para resolver el problema planteado. Estás utilizando condicionales if/else para verificar si un donante es compatible para donar sangre según la edad y el peso. Además, proporcionas mensajes específicos sobre qué criterio no se ha cumplido si el donante no es compatible.

Aquí tienes algunas sugerencias para asegurar que tu código funcione correctamente:

  1. Verificación de Edad y Peso: Ya estás verificando correctamente si el donante tiene entre 18 y 65 años y si pesa más de 50 kg. Esto es exactamente lo que se requiere.

  2. Mensajes Claros: Asegúrate de que los mensajes que se imprimen sean claros y específicos. Tu código ya hace esto al especificar el motivo por el cual el donante no es compatible.

  3. Cerrar el Scanner: Ya estás cerrando el objeto Scanner al final del programa, lo cual es una buena práctica para liberar recursos.

Aquí tienes un ejemplo de cómo se ejecutaría tu programa:

Entrada:

Ingrese la edad del donante: 17
Ingrese el peso del donante (en kg): 55

Salida:

El donante no es compatible.
Motivo: Debe tener entre 18 y 65 años.

Tu programa debería funcionar correctamente para este caso de prueba y otros similares. Si encuentras algún problema al ejecutar el código, verifica que los datos de entrada sean correctos y que el formato de los mensajes sea el esperado.

Espero haber ayudado y buenos estudios!