Hola Juan, espero que estés bien
Gracias por compartir tu código. Veo que estás en el camino correcto, pero hay un pequeño detalle que podrías mejorar para que tu programa cumpla con todos los requisitos de la actividad. Actualmente, tu programa solo indica que el donante no es compatible si no cumple con el criterio de edad, pero no menciona nada sobre el peso.
Para que el programa también indique si el peso es el problema, puedes modificar la lógica dentro del método compatible
para verificar cada criterio por separado y proporcionar un mensaje específico para cada caso. Aquí tienes una sugerencia de cómo podrías hacerlo:
public void compatible() {
if (edad < 18 || edad > 65) {
System.out.println("El donante no es compatible.\n" +
"Motivo: Debe tener entre 18 y 65 años.");
} else if (peso <= 50) {
System.out.println("El donante no es compatible.\n" +
"Motivo: Debe pesar más de 50 kg.");
} else {
System.out.println("El donante es compatible.");
}
}
Con esta modificación, el programa verificará primero si la edad está fuera del rango permitido y, si no lo está, verificará el peso. Así, podrás proporcionar un mensaje claro sobre cuál criterio no se cumple.
Espero que esta sugerencia te sea útil y que puedas continuar avanzando en tu aprendizaje de Java. ¡Espero haber ayudado y buenos estudios!