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: DRANXZ88 en 05 de Diciembre 2014, 17:08

Título: Ejercicios en java Cu00633B con uso de métodos set para establecer valores
Publicado por: DRANXZ88 en 05 de Diciembre 2014, 17:08
Quiero saber nomas que opinan de mi código a mi me funciona bien si se puede mejorar sera de mucha ayuda para mi gracias aquí le dejo el código
mi programa principal
Código: [Seleccionar]
package ejercicioscu00633b;

public class EjerciciosCu00633B {

    public static void main(String[] args) {

        Medico medico1 = new Medico();
        Medico medico2 = new Medico();

        medico1.setNombre("joel");
        medico1.setApellido("Duarte");
        medico1.setEspecialidad("Cardiologo");
        medico1.setEdad(33);
        medico1.setDocumentoIndentidad("3445767");
        medico1.setCasado(true);
        medico1.calculoParaMultiploEdad();

        medico2.setNombre("Marco");
        medico2.setApellido("Melgarejo");
        medico2.setEspecialidad("Traumatologo");
        medico2.setEdad(22);
        medico2.setDocumentoIndentidad("3445767");
        medico2.setCasado(false);
        medico2.calculoParaMultiploEdad();

    }

}

Y las clase donde esta el método y el constructor y los atributos
Código: [Seleccionar]
package ejercicioscu00633b;

public class Medico {

    private String nombre;
    private String apellido;
    private int edad;
    private boolean casado;
    private String documentoIndentidad;
    private String especialidad;

    public Medico() {

    }

    public Medico(String nombre, String apellido, int edad, boolean casado, String documentoIndentidad, String especialidad) {
        this.nombre = nombre;
        this.apellido = apellido;
        this.edad = edad;
        this.casado = casado;
        this.documentoIndentidad = documentoIndentidad;
        this.especialidad = especialidad;
    }

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public String getApellido() {
        return apellido;
    }

    public void setApellido(String apellido) {
        this.apellido = apellido;
    }

    public int getEdad() {
        return edad;
    }

    public void setEdad(int edad) {
        this.edad = edad;
    }

    public boolean isCasado() {
        return casado;
    }

    public void setCasado(boolean casado) {
        this.casado = casado;
    }

    public String getDocumentoIndentidad() {
        return documentoIndentidad;
    }

    public void setDocumentoIndentidad(String documentoIndentidad) {
        this.documentoIndentidad = documentoIndentidad;
    }

    public String getEspecialidad() {
        return especialidad;
    }

    public void setEspecialidad(String especialidad) {
        this.especialidad = especialidad;
    }

    public void calculoParaMultiploEdad() {

        int x = edad % 5;
        int r = 5 - x;
        System.out.println("El médico de nombre " + nombre + " con especialidad " + especialidad
                + " tendra una edad multiplo de 5 dentro de " + r + " años");

    }
}
Título: Re:Ejercicios en java Cu00633B con uso de métodos set para establecer valores
Publicado por: Ogramar en 06 de Diciembre 2014, 21:33
Hola Ramón, el código está bien pero hace más de lo que pide el ejercicio (por ejemplo estás usando cosas que se explican más adelante en el curso como this ó el método main). El ejercicio pide un constructor que asigne valores de defecto y no has hecho eso, sino poner un constructor que recibe parámetros, que es una cosa distinta.

¿Se puede mejorar? Sí, podrías introducir una mejora, que si el médico tiene 30 años en lugar de mostrarse "El médico de nombre joel con especialidad Cardiologo tendra una edad multiplo de 5 dentro de 5 años
" se muestre "El médico de nombre joel con especialidad Cardiologo tiene ahora mismo una edad múltiplo de 5 años". De todas formas esto no se pide en el ejercicio...


En resumen, bien y más de lo que se pedía :)
Título: Re:Ejercicios en java Cu00633B con uso de métodos set para establecer valores
Publicado por: DRANXZ88 en 08 de Diciembre 2014, 13:01
para hacer que se muestre así tendríamos que usar el if else el de ultima parte que me dijiste pero voy a hacer como practica gracia por tu opinion
Título: Re:Ejercicios en java Cu00633B con uso de métodos set para establecer valores
Publicado por: DRANXZ88 en 08 de Diciembre 2014, 13:49
Este es la modificación que me dijiste funciona bien ya ahora

Código: [Seleccionar]
public void calculoParaMultiploEdad() {

        int x = edad % 5;
        int r = 5 - x;
        if (r != 5) {
            System.out.println("El médico de nombre " + nombre + " con especialidad " + especialidad
                    + " tendra una edad multiplo de 5 dentro de " + r + " años");
        } else {
            System.out.println("El médico de nombre " + nombre + " con especialidad " + especialidad
                    + " tiene ahora mismo una edad de multiplo de 5");
        }
    }
Título: Re:Ejercicios en java Cu00633B con uso de métodos set para establecer valores
Publicado por: Ogramar en 08 de Diciembre 2014, 16:39
Sí, no se pedía en el ejercicio pero así lo dejas funcionando perfecto  ;D