Autor Tema: Java Ejercicio con operador módulo para calcular resto de división CU00633B  (Leído 2607 veces)

paramonso

  • Intermedio
  • ***
  • Mensajes: 241
  • El ignorante afirma, el sabio duda y reflexiona.
    • Ver Perfil
Hola. Dejo el Ejercicio CU00633B del curso básico de programación orientada a objetos con Java. Operadores aritméticos en Java. +, -, *, / y %. Operador mod o resto de una división entre enteros.

Citar
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. Para comprobar si es correcta tu solución puedes consultar en los foros aprenderaprogramar.com.

Código: [Seleccionar]
//Declaracion de la clase
public class Medico{
    String nombre;                    //Nombre del medico
    String apellido;                  //Apellido del medico
    int edad;                         //Su edad
    boolean casado;                   //¿Esta casado?
    String numeroDNI;  //Su numero de identidad
    String especialidad;              //Su especialidad
    //Constructor y  atributos de la clase
    public Medico(){
        nombre= "Paquito";
        apellido= "El Chocolatero";
        edad= 0;
        casado= false;
        numeroDNI= "12305640-M";
        especialidad= "Novel";
    }
   
//Metodos setter
    public void setNombre(String valueName){
        System.out.println("Se ha cambiado el nombre del medico especialista " +  especialidad + " a : " +valueName);
        nombre= valueName;
    }

    public void setApellido(String valueApellido){
        System.out.println("Se ha cambiado el apellido del medico especialista  " + especialidad + " " +nombre +" a: "+valueApellido);
        apellido= valueApellido;
    }

    public void setEdad(int valueEdad){
        System.out.println("Se ha cambiado la edad del medico especialista "+ especialidad+ " "+ nombre +" "+ apellido +" a: "+valueEdad);
        edad= valueEdad;
    }

    public void setCasado(boolean valueCasado){
         System.out.println("El medico especialista " + especialidad +" "+ nombre +" "+ apellido +" ahora esta casado? : "+valueCasado);
         casado= valueCasado;
    }

    public void setnumeroDNI(String valuenumeroDNI){
        System.out.println("Se ha cambiado el numero de identidad del medico "+ nombre + " " +apellido + " de  "+numeroDNI +" a: "+valuenumeroDNI);
        numeroDNI= valuenumeroDNI;
    }

    public void setEspecialidad(String valueEspecialidad){
        System.out.println("Se ha cambiado la especialidad del medico "+nombre +" " + apellido +" de " + especialidad +" a: "+valueEspecialidad);
        especialidad= valueEspecialidad;
    }

    public String getNombre(){ return nombre;}

    public String getApellido(){return apellido;}

    public int getEdad(){return edad;}

    public boolean getCasado(){return casado;}

    public String getnumeroDNI(){return numeroDNI;}

    public String getEspecialidad(){return especialidad;}
   
    public void calculoParaMultiploEdad(){
        int resto, faltan;
        resto=edad % 5;
        faltan=5-resto;
         System.out.println("El Medico "+nombre+" "+apellido+ " Especialista en " +especialidad+ " tendra una edad multiplo de 5 dentro de :"+ faltan +" años");
       
    }
}
Gracias.
« Última modificación: 02 de Marzo 2019, 14:52 por Ogramar »

Ogramar

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2662
    • Ver Perfil
Buenas, para quien revise este ejercicio dejo algún comentario:

- En el constructor es mejor inicializar a cadenas vacías "", 0 ó false. De este modo se sabe que el objeto aún no tiene atributos establecidos.

- En los métodos get y set no es necesario usar System.out.println excepto si el ejercicio nos lo pide expresamente

Salu2

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".