Autor Tema: Ejercicio! entrega CU00633B ejemplo uso operador módulo java  (Leído 5122 veces)

Jorge lopez

  • Sniper
  • Intermedio
  • ***
  • APR2.COM
  • Mensajes: 248
  • @SniperOfElite
    • Ver Perfil
Código: [Seleccionar]
public class Doctor{
    String nombre, apellido, especialidad, numeroDocumentoIdentidad;
    int edad;
    boolean casado;

    //Constructor
    public Doctor(){
        nombre = "";
        apellido = "";
        especialidad = "";
        numeroDocumentoIdentidad = "";
        edad = 0;
        casado = false;
    }
    //setters
    public void setNombre(String valorNombre){nombre = valorNombre;
        System.out.println("Ha cambiado el nombre del doctor, el nuevo nombre del doctor es: " + nombre);}

    public void setApellido(String valorApellido){apellido = valorApellido;
        System.out.println("Ha cambiado el apellido del doctor " + nombre + ", su nuevo apellido es: " + apellido);}
       
    public void setEspecialidad(String valorEspecialidad){especialidad = valorEspecialidad;
    System.out.println("Ha cambiado la especialidad del doctor " + nombre +" "+ apellido + ", ID: " + numeroDocumentoIdentidad +
    ". La nueva especialidad del doctor es: " + especialidad);}

    public void setNumeroDocumentoIdentidad(String valorNumeroDocumentoIdentidad){numeroDocumentoIdentidad = valorNumeroDocumentoIdentidad;
        System.out.println("Ha cambiado el ID del doctor " + nombre +" "+ apellido + ", el nuevo ID es: " + numeroDocumentoIdentidad);}

    public void setEdad(int valorEdad){edad = valorEdad;
        System.out.println("Ha cambiado la edad del doctor: " + nombre +" "+ apellido + "de ID: " + numeroDocumentoIdentidad + ", la nueva edad es: " + edad +
        " años.");}

    public void setCasado(boolean valorCasado){casado = valorCasado;
        System.out.println("Ha cambiado el estado civil del doctor: " + nombre+" "+ apellido + ", ID " + numeroDocumentoIdentidad +
            ", el nuevo valor del estado civil del doctor ahora es: " + casado);}

    public void mostrarMultiploEdad(){
        int ultimoMultiplo5Edad;
        int proximoMultiplo5Edad;
        ultimoMultiplo5Edad = edad%5;
        proximoMultiplo5Edad = 5 -(edad%5);
        System.out.println("El doctor de nombre " + nombre +" "+ apellido + ", ID: " + numeroDocumentoIdentidad + ", tubo una edad multiplo de 5 hace " +
            ultimoMultiplo5Edad + " años y tendra una proxima edad multiplo de 5 dentro de " + proximoMultiplo5Edad + " años.");
    }

    //setters
    public String getNombre(){return nombre;}

    public String getApellido(){return apellido;}
   
    public String getEspecialidad(){return especialidad;}

    public String getNumeroDocumentoIdentidad(){return numeroDocumentoIdentidad;}

    public int getEdad(){return edad;}

    public boolean getCasado(){return casado;}
}
« Última modificación: 02 de Septiembre 2014, 18:19 por Alex Rodríguez »
while(estesVivo)
{
  aprende();
  ayuda();
  enseña();
}
if(mueres){teRecordaran();}

César Krall

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2078
  • No vales por lo que dices, sino por lo que haces
    • Ver Perfil
    • aprenderaprogramar.com
Re:Ejercicio! entrega CU00633B
« Respuesta #1 en: 31 de Mayo 2014, 10:24 »
Hola el código está correcto, como comentario en los métodos setters no es necesario incluir un mensaje por consola del tipo System.out.println("Ha cambiado el nombre del doctor, el nuevo nombre del doctor es: " + nombre);} Normalmente no se incluye (me refiero al desarrollo de programas profesionales), aunque si quieres incluirlo en los ejercicios de aprendizaje para poder verificar que funciona bien puedes hacerlo. Saludos
Responsable de departamento de producción aprenderaprogramar.com

Jorge lopez

  • Sniper
  • Intermedio
  • ***
  • APR2.COM
  • Mensajes: 248
  • @SniperOfElite
    • Ver Perfil
Re:Ejercicio! entrega CU00633B
« Respuesta #2 en: 03 de Junio 2014, 01:59 »
Gracias por los tips!

y si necesito incluir un mensaje por consola del tipo System.out.println("Ha cambiado el nombre del doctor, el nuevo nombre del doctor es: " + nombre);} Donde seria recomendable colocarlo? 
while(estesVivo)
{
  aprende();
  ayuda();
  enseña();
}
if(mueres){teRecordaran();}

César Krall

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2078
  • No vales por lo que dices, sino por lo que haces
    • Ver Perfil
    • aprenderaprogramar.com
Re:Ejercicio! entrega CU00633B
« Respuesta #3 en: 03 de Junio 2014, 18:50 »
La idea es que una clase como Doctor se encargará de mantener la información de un doctor, no de hacer otras tareas como mostrar mensajes o de concertar citas médicas. "Una clase para cada cosa" (programación cohesiva). Si tuvieras que mostrar mensajes podría pensarse en usar por ejemplo otra clase a la que llamáramos "Notificador" o "MostradorDeMensajes" que se encarga de mostrar los mensajes. De todas formas estas ideas tendrás que irlas asimilando a medida que vayas programando más y adquiriendo más conocimientos, no te preocupes ahora por eso sino por ir asimilando los conceptos que vas estudiando.

Responsable de departamento de producción aprenderaprogramar.com

jogonzalezmor

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 26
    • Ver Perfil
Re:Ejercicio! entrega CU00633B
« Respuesta #4 en: 13 de Junio 2014, 15:34 »
Hago evío de mi ódigo, para ver si está correcto. Lo hice desde mi trabajo, donde no puedo instalar BlueJ para compliar y verificar errores.
En cuanto al alcance de los mensajes, se envía asi ya que en el módulo anterior, CU00632B se solicitaba así, por lo tanto, reutilicé mi código y sólo agregué lo solicitado, que está marcado en azul.

Código: [Seleccionar]
/*Ejercicio modulo CU00633B*/
public class Medico{

    String nombre;
    String apellidos;
    int edad;
    boolean casado;
    String numeroDocumentoIdentidad;
    String especialidad;
    int multimploEdad;


    //Constructor médico
    public Medico () {

        nombre = "desconocido";
        apellidos = "desconocido";
        edad = 24;
        casado = false;
        numeroDocumentoIdentidad = "desconocido" ;
        especialidad = "desconocida";
multiploEdad = 0;
    }
   
    //Métodos setter

   
    public void setNombre(String valorNombre){
        nombre = valorNombre;
        System.out.println("Ha cambiado el nombre del médico a: " + nombre);
    }

    public void setApelidos(String valorApellidos){
        apellidos = valorApellidos;
        System.out.println("Han cambiado los apellidos del médico a: " + apellidos);
    }

    public void setEdad(int valorEdad){
        edad = valorEdad;
        System.out.println("Ha cambiado la edad del medico a: " + edad);
    }


    public void setCasado(boolean valorCasado){
        casado = valorCasado;
        if (casado == true) {
            System.out.println("El estado civil del médico ha cambiado casado");}
        else {System.out.println("El estado civil del médico ha cambiado a soltero");}
    }

    public void setNumeroDocumentoIdentidad(String valorNumeroDocumentoIdentidad){
        numeroDocumentoIdentidad = valorNumeroDocumentoIdentidad;
        System.out.println("El numero del documento de identidad del médico ha cambiado a: " + numeroDocumentoIdentidad);
    }

    public void setEspecialidad(String valorEspecialidad){
        especialidad = valorEspecialidad;
        System.out.println("La especialidad del médico ha cambiado a: " + especialidad);
    }

[color=blue][i][b]//Cálculo que permite saber en cuantos años el médico tendrá edad con multiplo de 5
    public void calculoParaMultiploEdad (){
int modEdad;
modEdad = edad % 5;
mutiploEdad = 5 - modEdad;
System.out.println("“El médico de nombre " + nombre +" con especialidad " + especialidad + " tendrá una edad múltiplo de 5 dentro de " + mutiploEdad + " años”);
    }[/b][/i][/color]
    //Métodos getter

    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;}
}

Jorge lopez

  • Sniper
  • Intermedio
  • ***
  • APR2.COM
  • Mensajes: 248
  • @SniperOfElite
    • Ver Perfil
Re:Ejercicio! entrega CU00633B
« Respuesta #5 en: 14 de Junio 2014, 08:28 »
 Hola jogonzalezmor!
estos son los posibles errores que e podido encontrar en tu código:

  Aquí declaraste la variable: multimploEdad, lo que no seria problema para el compilador si la continuaras usando tal y como la escribiste al momento de declararla, pero luego usas: multiploEdad. (Error ortográfico)
Código: [Seleccionar]
public class Medico{

    String nombre;
    String apellidos;
    int edad;
    boolean casado;
    String numeroDocumentoIdentidad;
    String especialidad;
    int multiploEdad;
  Aquí primero: hay un error ortográfico, segundo: concatenaste en el System.out.println la variable mutiploEdad en ves de multipoEdad(error ortográfico) y tercero: en el texto de la cadena has confundido una comilla recta doble (") con una comilla inglesa (”) "años” esto da lugar a error de compilacion, o mas bien no has incluido la comilla recta doble de cierre para que el texto salga resaltado entre comillas inglesas ya que al principio de la cadena también usas una comilla inglesa, lo correcto seria:
("“El médico de nombre " + nombre +" con especialidad " + especialidad + " tendrá una edad múltiplo de 5 dentro de " + multiploEdad + " años”")
Código: [Seleccionar]
public void calculoParaMultiploEdad (){
  int modEdad;
  modEdad = edad % 5;
  mutiploEdad = 5 - modEdad; // <---Aqui hay otro error ortografico, trata de idetificarlo por ti mismo.
  System.out.println("“El médico de nombre " + nombre +" con especialidad " + especialidad + " tendrá una edad múltiplo de 5 dentro de " + mutiploEdad + " años”);
   }

 Te sugiero tener mas cuidado con la ortografía ya que el compilador es muy exigente a la hora de compilar.

Saludos!
« Última modificación: 14 de Junio 2014, 08:39 por Sniper »
while(estesVivo)
{
  aprende();
  ayuda();
  enseña();
}
if(mueres){teRecordaran();}

jogonzalezmor

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 26
    • Ver Perfil
Re:Ejercicio! entrega CU00633B
« Respuesta #6 en: 14 de Junio 2014, 15:08 »
Hola jogonzalezmor!
estos son los posibles errores que e podido encontrar en tu código:

  Aquí declaraste la variable: multimploEdad, lo que no seria problema para el compilador si la continuaras usando tal y como la escribiste al momento de declararla, pero luego usas: multiploEdad. (Error ortográfico)
Código: [Seleccionar]
public class Medico{

    String nombre;
    String apellidos;
    int edad;
    boolean casado;
    String numeroDocumentoIdentidad;
    String especialidad;
    int multiploEdad;
  Aquí primero: hay un error ortográfico, segundo: concatenaste en el System.out.println la variable mutiploEdad en ves de multipoEdad(error ortográfico) y tercero: en el texto de la cadena has confundido una comilla recta doble (") con una comilla inglesa (”) "años” esto da lugar a error de compilacion, o mas bien no has incluido la comilla recta doble de cierre para que el texto salga resaltado entre comillas inglesas ya que al principio de la cadena también usas una comilla inglesa, lo correcto seria:
("“El médico de nombre " + nombre +" con especialidad " + especialidad + " tendrá una edad múltiplo de 5 dentro de " + multiploEdad + " años”")
Código: [Seleccionar]
public void calculoParaMultiploEdad (){
  int modEdad;
  modEdad = edad % 5;
  mutiploEdad = 5 - modEdad; // <---Aqui hay otro error ortografico, trata de idetificarlo por ti mismo.
  System.out.println("“El médico de nombre " + nombre +" con especialidad " + especialidad + " tendrá una edad múltiplo de 5 dentro de " + mutiploEdad + " años”);
   }

 Te sugiero tener mas cuidado con la ortografía ya que el compilador es muy exigente a la hora de compilar.

Saludos!

Muchas gracias por las correcciones. Es un cacho hacer esto en el trabajo al no tener el BlueJ para compilar y ver los errores en el momento, así que tendré mas cuidado con la ortografía y las comillas cuando lo haga acá...
« Última modificación: 14 de Junio 2014, 17:02 por jogonzalezmor »

 

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".