Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: Dimitar Stefanov en 29 de Febrero 2016, 09:51

Título: Java cómo simplificar el diseño de métodos para evitar la complejidad CU00633B
Publicado por: Dimitar Stefanov en 29 de Febrero 2016, 09:51
Buenos días, acto seguido subo la solución del ejercicio CU00633B del curso Java desde cero.

Código: [Seleccionar]
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 getNumerdoDocumentoIdentidad(){return numeroDocumentoIdentidad;}
   
    public String getEspecialidad(){return especialidad;}
   
    public void calculoParaMultiploEdad(){
    int anyosQueFaltan;
    int anyosQueFaltan1;
    anyosQueFaltan = edad % 5;
    anyosQueFaltan1 = 5 - anyosQueFaltan;
    System.out.println("El médico de nombre: " + nombre + " con especialidad: " + especialidad + " tendrá una edad múltiple de 5 dentro de " + anyosQueFaltan1 + " años.");
    }
}

Gracias.
Título: Re:CU00633B Java, Operadores aritméticos en Java
Publicado por: pedro,, en 29 de Febrero 2016, 17:00
Hola dimiste.

El ejercicio cumple lo que pedía el enunciado. Aunque en el método calculoParaMultiploEdad(), declaras dos nuevos atributos, cosa que no sería necesaria, incluso se podría resolver sin crear ningún nuevo atributo.

Código: [Seleccionar]
public void calculoParaMultiploEdad(){
        System.out.println("El médico de nombre: " + nombre + " con especialidad: " + especialidad + " tendrá una edad múltiple de 5 dentro de " + (5-(edad % 5)) + " años.");
    }

Saludos.
Título: Re:CU00633B Java, Operadores aritméticos en Java
Publicado por: Dimitar Stefanov en 29 de Febrero 2016, 18:17
Buenas, Pedro.

Totalmente de acuerdo. Tu manera de hacer las cosas es mucho más sofisticada que la mía. Gracias por corregirme y darme esta solución.

Saludos.