Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: arcanFAC en 08 de Marzo 2015, 19:53
-
Entrego el ejercicio:
Define una clase Medico considerando los siguientes atributos de clase: nombre (String), apellidos (String), edad (int), casado (boolean), numeroDocumentoIdentidad (String), especialidad (String). Define un constructor asignando unos valores de defecto a los atributos y los métodos para poder establecer y obtener los valores de los atributos. Define un método de nombre “calculoParaMultiploEdad” que no recibe parámetros y es tipo procedimiento cuyo cometido será el siguiente: determinar cuántos años faltan para que la edad del médico sea múltiplo de 5 y mostrar un mensaje informativo por pantalla. Por ejemplo si el médico tiene 22 años deberá en primer lugar obtener el resto de la división de 22 entre 5, que es 2. Ahora obtendrá los años que faltan para que el médico tenga una edad múltiplo de 5, que serán 5-2 = 3 años. A continuación deberá mostrar un mensaje por consola del tipo: “El médico de nombre … con especialidad … tendrá una edad múltiplo de 5 dentro de … años”. Compila el código para comprobar que no presenta errores, crea un objeto, usa sus métodos y comprueba que aparezcan correctamente los mensajes por consola, y que cuando cambias la edad aparece correctamente el tiempo que falta para que la edad sea múltiplo de 5.
public class Medico{
private String nombre;
private String apellidos;
private int edad;
private boolean casado;
private String numeroDocumentoIdentidad;
private String especialidad;
public Medico(){
nombre = "";
apellidos = "";
edad = 0;
casado = false;
numeroDocumentoIdentidad = "";
especialidad = "";
}
public void setNombre(String valorNombre){
nombre = valorNombre;
}
public void setApellidos(String valorApellidos){
apellidos = valorApellidos;
}
public void setEdad(int valorEdad){
edad = valorEdad;
}
public void setCasado(boolean valorCasado){
casado = valorCasado;
}
public void setNumeroDocumentoIdentidad(String valorNumeroDocumentoIdentidad){
numeroDocumentoIdentidad = valorNumeroDocumentoIdentidad;
}
public void setEspecialidad(String valorEspecialidad){
especialidad = valorEspecialidad;
}
public String getNombre(){return nombre;}
public String getApellidos(){return apellidos;}
public int getEdad(){return edad;}
public boolean getCasado(){return casado;}
public String getNumeroDocumentoIdentidad(){return numeroDocumentoIdentidad;}
public String getEspecialidad(){return especialidad;}
public void calculoParaMultiploEdad(){
int C = 0, D = 0;
C = edad % 5;
D = 5 - C;
System.out.println("El médico de nombre " + nombre + ", con especialidad " + especialidad + ", tendrá una edad multiplo de 5 dentro de " + D + " años.");
}
}
-
Hola arcanFAC
Ejercicio perfecto. OK
Mi apunte para el código:
Las convenciones en Java (que no obligaciones) recomiendan bautizar las variables con nombres descriptivos y además empezar siempre con minúscula.
Así, las variables C y D del método calculoParaMultiploEdad() quedarían más inteligibles por ejemplo:
C -> moduloEdad
D -> diferenciaModulo
Algunas veces un código lo tienes que leer dos veces para entenderlo. Si además usamos nombres que no dicen nada, no ayudamos a la compresión.
Saludos
-
Ok. Gracias por la respuesta. La verdad es que hasta ahora siempre que programo coloco letras al azar y me hago un lio solito, lo tendré en cuenta. :)