Autor Tema: Java. Estructura de if else, else if condicionales en entorno BlueJ CU00636B  (Leído 2519 veces)

Mattius

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 6
    • Ver Perfil
Estimados, vuelvo a dejar un ejercicio para su correción si son tan amables. Ejercicio CU00636B del tutorial básico de programación Java con entorno de aprendizaje BlueJ.

Saludos!

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

    public EjercicioIf()
    {
       tipo= "";
       grosor= 0;
       diametro= 0;
       marca= "";
    }

    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 void comprobarDimensiones (){
         if (diametro > (1.4)) {
            System.out.println("La rueda de marca (" + marca + "), de tipo " + tipo + " de diametro (" + diametro + ") y de grosor (" + grosor + ") es para vehiculos grandes.");
        }
        else if ( /*(1.4) >= diametro >= (0.8))*/ (diametro <= (1.4) && diametro > (0.8))){
            System.out.println("La rueda de marca (" + marca + "), de tipo (" + tipo + ") de diametro (" + diametro + ") y de grosor (" + grosor + ")es para vehiculos medianos.");
        }
        else{
            System.out.println("La rueda de marca (" + marca + "), de tipo (" + tipo + ") de diametro (" + diametro + ") y de grosor (" + grosor + ") es para vehiculos pequeños.");
        }
        if ((diametro > (1.4) && grosor < (0.4)) || ((diametro <= (1.4)) && (diametro > (0.8)) && (grosor < (0.25)))){
           System.out.println("El grosor de la rueda de marca (" + marca + "), de tipo (" + tipo + ") de diametro (" + diametro + ") y de grosor (" + grosor + ") para esta rueda, es inferior al recomendado.");
        }
}
    public String getTipo (){
        return tipo;
    }
    public double getGrosor () {
        return grosor;
    }
    public double getDiametro (){
        return diametro;
    }
    public String getMarca (){
        return marca;
    }
}
« Última modificación: 22 de Junio 2017, 18:07 por Alex Rodríguez »

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:Ejercicio CU00636B
« Respuesta #1 en: 31 de Mayo 2017, 10:37 »
Hola Mattius.

Te vuelvo a decir como en el anterior ejercicio que hay que nombrar las clases adecuadamente, en este caso el nombre tendría que haber sido Rueda.

https://www.aprenderaprogramar.com/foros/index.php?topic=1460.msg7784#msg7784

En cuanto a la solución decir que está bien resuelto, solo comentarte que en el método comprobarDimensiones() repites mucho código, te dejo una alternativa para que vayas teniendo en cuenta estas cosas en intentes no trabajar doble cuando se puede hacer más fácil.
Código: [Seleccionar]
public void comprobarDimensiones() {

String msg = "La rueda de marca (" + marca + "), de tipo " + tipo
+ " de diametro (" + diametro + ") y de grosor (" + grosor + ")";
if (diametro > (1.4)) {
System.out.println(msg + " es para vehiculos grandes.");
} else if ( /* (1.4) >= diametro >= (0.8)) */(diametro <= (1.4) && diametro > (0.8))) {
System.out.println(msg + " es para vehiculos medianos.");
} else {
System.out.println(msg + " es para vehiculos pequeños.");
}
if ((diametro > (1.4) && grosor < (0.4))
|| ((diametro <= (1.4)) && (diametro > (0.8)) && (grosor < (0.25)))) {
System.out.println("El grosor de la rueda de marca (" + marca
+ "), de tipo (" + tipo + ") de diametro (" + diametro
+ ") y de grosor (" + grosor
+ ") para esta rueda, es inferior al recomendado.");
}
}

El último if también se podría abreviar, pero eso ya te lo dejo a ti. ;D

Saludos.

Mattius

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 6
    • Ver Perfil
Re:Java. Estructura de if else, else if,. CU00636B
« Respuesta #2 en: 31 de Mayo 2017, 19:54 »
Muchas gracias por tomarte un tiempo en verlo, lo corregiré y voy a tener en cuenta para mi próximo ejercicio lo que mencionas.

Saludos!

 

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