Autor Tema: Ejemplo de clase Java sencilla con if else alguien me podria corregir?  (Leído 4000 veces)

elnachig

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 2
    • Ver Perfil
Buenas! estoy haciendo el curso de aprender a programar desde 0 y hasta ahora logro que los ejercicios me den bien, pero tengo la certeza de que estoy haciendo algo incorrecto cuando doy los parametros para que me de los mensajes por consola ya que me los da solamente cuando modifico un parametro en particular y no siempre que modifico un parametro. Les copio el codigo asi me entienden mejor
gracias!

el ejercicio es
Considera estás desarrollando un programa Java donde necesitas trabajar con objetos de tipo Rueda (que representa a una rueda de un vehículo). Define una clase Rueda considerando los siguientes atributos de clase: tipo (String), grosor (double), diametro (double), marca (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. Crea un método denominado comprobarDimensiones donde a través de condicionales if realices las siguientes comprobaciones:

a) Si el diámetro es superior a 1.4 debe mostrarse por consola el mensaje “La rueda es para un vehículo grande”. Si es menor o igual a 1.4 pero mayor que 0.8 debe mostrarse por consola el mensaje “La rueda es para un vehículo mediano”. Si no se cumplen ninguna de las condiciones anteriores debe mostrarse por pantalla el mensaje “La rueda es para un vehículo pequeño”.

b) Si el diámetro es superior a 1.4 con un grosor inferior a 0.4, ó si el diámetro es menor o igual a 1.4 pero mayor que 0.8, con un grosor inferior a 0.25, deberá mostrarse por consola el mensaje “El grosor para esta rueda es inferior al recomendado”.

 

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

Código: [Seleccionar]
public class Rueda  {
    String tipo;
    double grosor;
    double diametro;
    String marca;

    public Rueda () {
        tipo = "Radial";
        grosor = 1.2;
        diametro = 1.0;
        marca = "Good Year";
    }

    public void setTipo (String valorTipo) {
        tipo = valorTipo;
    }

    public void setGrosor (double valorGrosor) {
        grosor = valorGrosor;
    }

    public void setDiametro (double valorDiametro) {
        diametro = valorDiametro;
        if (diametro > 1.4) {System.out.println ("La Rueda es para un vehículo Grande");
        } else if (diametro <= 1.4 && diametro > 0.8) {System.out.println ("La Rueda es para un vehículo Mediano");}
            else {System.out.println ("La Rueda es para un vehículo Pequeño");}
        if (diametro > 1.4 && grosor < 0.4 || diametro <= 1.4 && diametro > 0.8 && grosor < 0.25) {System.out.println ("El Grosor Para esta Rueda es Inferior al Recomendado");
        }
    }
}
« Última modificación: 23 de Abril 2014, 13:41 por Ogramar »

Ogramar

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2662
    • Ver Perfil
Re:Ejemplo de clase Java sencilla con if else alguien me podria corregir?
« Respuesta #1 en: 23 de Abril 2014, 13:41 »
Hola, el código está en general bien pero tendrías que corregir:

- Cuando defines el constructor estás creando una rueda, lo más lógico es que primero se cree la rueda sin marca y luego establezcas la marca (usando el método setMarca)

- Te falta el método setMarca para poder establecer la marca

- Te faltan los métodos getTipo, getGrosor, getDiametro y getMarca para poder recuperar el valor de estos campos.

- El if para comprobar las dimensiones de la rueda no debe ir dentro del método setDiametro, sino en un método independiente denominado comprobarDimensiones

- Para hacer comprobaciones tienes que cambiar las dimensiones usando los métodos set y luego ver el mensaje por pantalla usando el método comprobarDimensiones

El código sería como este (el tuyo no tiene que ser exactamente igual, incluso puedes añadir comprobaciones adicionales como que si la rueda tiene diámetro 0 muestre un mensaje diciendo que la rueda no tiene diámetro):

Código: [Seleccionar]
public class Rueda  {
    String tipo;
    double grosor;
    double diametro;
    String marca;

    public Rueda () {
        tipo = "No establecido";
        grosor = 0;
        diametro = 0;
        marca = "No establecido";
    }

    public void setTipo (String valorTipo) {tipo = valorTipo;}

    public void setGrosor (double valorGrosor) {grosor = valorGrosor;}

    public void setDiametro (double valorDiametro) {diametro = valorDiametro;    }

    public void setMarca (String valorMarca) {marca = valorMarca; }

    public String getTipo() {return tipo;}
    public double getGrosor() {return grosor;}
    public double getDiametro() {return diametro;}
    public String getMarca() {return marca;}

    public void comprobarDimensiones() {
        if (diametro > 1.4) {System.out.println ("La Rueda es para un vehículo Grande");
        } else if (diametro <= 1.4 && diametro > 0.8) {System.out.println ("La Rueda es para un vehículo Mediano");}
        else {System.out.println ("La Rueda es para un vehículo Pequeño");}
        if (diametro > 1.4 && grosor < 0.4 || diametro <= 1.4 && diametro > 0.8 && grosor < 0.25) {System.out.println ("El Grosor Para esta Rueda es Inferior al Recomendado");
        }
    }
}

Saludos!

elnachig

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 2
    • Ver Perfil
Re:Ejemplo de clase Java sencilla con if else alguien me podria corregir?
« Respuesta #2 en: 23 de Abril 2014, 23:03 »
Muchísimas gracias!, exactamente por esto hice la pregunta porque si bien logre que los mensajes me salgan en pantalla es como que omiti pasos, y hay cosas que no me habian quedado claras como el "comprobarDimensiones"
saludos! y gracias nuevamente

 

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