Autor Tema: Ejercicio! entrega CU00636B if con and y or java  (Leído 5883 veces)

Jorge lopez

  • Sniper
  • Intermedio
  • ***
  • APR2.COM
  • Mensajes: 248
  • @SniperOfElite
    • Ver Perfil
Ejercicio! entrega CU00636B if con and y or java
« en: 02 de Junio 2014, 07:06 »
Código: [Seleccionar]
public class Rueda{
    String tipo, marca;
    double grosor, diametro;

    //constructor
    public Rueda(){
        tipo = "";
        marca= "";
        grosor = 0.0;
        diametro = 0.0;
    }

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

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

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

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

    //getters
    public String getTipo(){return tipo;}

    public String getMarca(){return marca;}

    public double getGrosor(){return grosor;}

    public double getDiametro(){return diametro;}

    public void comprobarDimensiones(){
        if(diametro > 1.4){System.out.println("La rueda es para un vehiculo grande.");}
        else if(diametro <= 1.4 && diametro > 0.8){System.out.println("La rueda es para un vehiculo mediano");}
        else{System.out.println("La rueda es para un vehiculo 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");}
        else{}
       
    }
}
« Última modificación: 02 de Septiembre 2014, 18:18 por Alex Rodríguez »
while(estesVivo)
{
  aprende();
  ayuda();
  enseña();
}
if(mueres){teRecordaran();}

Jorge lopez

  • Sniper
  • Intermedio
  • ***
  • APR2.COM
  • Mensajes: 248
  • @SniperOfElite
    • Ver Perfil
Ejercicio! entrega CU00636B
« Respuesta #1 en: 02 de Junio 2014, 17:45 »
Esto no es una respuesta, mas bien es el mismo ejercicio modificado, ya que no encontré la opción de modificar el ejercicio original después de publicarlo, si hay una ayuda para mi caso sera bienvenida al igual que la revision del ejercicio. Saludos!

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

    //constructor
    public Rueda(){
        tipo = "________";
        marca= "________";
        grosor = 0.0;
        diametro = 0.0;
    }

    //setters

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

    public void setDiametro(double valorDiametro){diametro = valorDiametro;}
   
    public void setTipo(String valorTipo){tipo = valorTipo;}
   
    public void setMarca(String valorMarca){marca = valorMarca;}

    //getters
    public String getTipo(){return tipo;}

    public String getMarca(){return marca;}

    public double getGrosor(){return grosor;}

    public double getDiametro(){return diametro;}

    public void comprobarDimensiones(){
        if(diametro > 1.4){System.out.println("La rueda marca: " + marca +", tipo: " + tipo + ", de diametro: " + diametro + ", y grosor: " + grosor +" es para un vehiculo grande.");}
        else if(diametro <= 1.4 && diametro > 0.8)
        {System.out.println("La rueda marca: " + marca +", tipo: " + tipo + ", de diametro: " + diametro + ", y grosor: " + grosor + " es para un vehiculo mediano");}
        else{System.out.println("La rueda marca: " + marca +", tipo: " + tipo + ", de diametro: " + diametro + ", y grosor: " + grosor + " es para un vehiculo pequeño");}

        if(diametro > 1.4 && grosor < 0.4 || diametro <= 1.4 && diametro > 0.8 && grosor < 0.25)
        {System.out.println("El grosor: " + grosor + " para esta rueda es inferior al recomendado");}
        else{}

    }
}
« Última modificación: 02 de Junio 2014, 18:24 por Sniper »
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 CU00636B
« Respuesta #2 en: 03 de Junio 2014, 18:45 »
Hola, el programa lo veo correcto, enhorabuena por tu avance. Saludos,
Responsable de departamento de producción aprenderaprogramar.com

jogonzalezmor

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 26
    • Ver Perfil
Re:Ejercicio! entrega CU00636B
« Respuesta #3 en: 15 de Junio 2014, 14:04 »
Acabo de terminar mi codigo para este ejercicio, aunque pareciera que la primera consulta if para determinar si el diametro es inferior al recomendado no me discrimina bien.

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

//Constructor de objeto Rueda

public rueda(){

tipo = "";
        marca= "";
        grosor = 0.0;
        diametro = 0.0;

}

//Métodos setter and getter

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

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

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

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



    public String getTipo(){return tipo;}

    public double getGrosor(){return grosor;}

    public double getDiametro(){return diametro;}

    public String getMarca(){return marca;}

    //Método para comprobar dimensiones.
    public void comprobarDimensiones (){
        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");
        }
        else 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");
        }

    }
}

Agradecería sus comentarios.

Salu2...

Mastermind

  • Experto
  • *****
  • Mensajes: 536
    • Ver Perfil
Re:Ejercicio! entrega CU00636B
« Respuesta #4 en: 15 de Junio 2014, 15:11 »
El código que has puesto no compila.

Los if no los tienes bien construidos. Por ejemplo:

        else 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");
        }

Si el diámtro es menor o igual a 1.4 siempre se ejecutará el primer else if y nunca el segundo, entonces el segundo es inútil.

Para plantearlo bien tienes que establecer las condiciones y mensajes referidos al tamaño con un if y las condiciones y mensajes referidos al grosor en otro if, no todo en un solo if con else if, no sé si me habré explicado la idea  :D


jogonzalezmor

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 26
    • Ver Perfil
Re:Ejercicio! entrega CU00636B
« Respuesta #5 en: 15 de Junio 2014, 15:33 »
El código que has puesto no compila.

Los if no los tienes bien construidos. Por ejemplo:

        else 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");
        }

Si el diámtro es menor o igual a 1.4 siempre se ejecutará el primer else if y nunca el segundo, entonces el segundo es inútil.

Para plantearlo bien tienes que establecer las condiciones y mensajes referidos al tamaño con un if y las condiciones y mensajes referidos al grosor en otro if, no todo en un solo if con else if, no sé si me habré explicado la idea  :D

En ese caso, bastaría con invertir los else if? si es así, podría discriminar de inmediato si la rueda es de tamaño mediano, de lo contrario, es para tamaño grande. O no?

Jorge lopez

  • Sniper
  • Intermedio
  • ***
  • APR2.COM
  • Mensajes: 248
  • @SniperOfElite
    • Ver Perfil
Re:Ejercicio! entrega CU00636B
« Respuesta #6 en: 15 de Junio 2014, 16:00 »
Hola jogonzalezmor.

a continuación los posibles errores de tu código:

Los paréntesis () indican cuando un método es de tipo función, aquí estas declarando la clase, que dentro de sus llaves {} albergara: variables, constructores,
métodos ext. no debes colocar paréntesis al iniciar tu clase. También este sierre esta mal ubicado porque esta serrando la clase y esta dejado fuera todo el código que este por debajo de el, este es el cierre de:
 public class Rueda{ que debería estar al final como ultimo carácter en el código de la clase
Código: [Seleccionar]
public class Rueda() {
    String tipo;
    double grosor;
    double diametro;
    String marca;
}

si en principio declaraste Rueda, aquí no debes declarar rueda, una "simple" diferencia de MAYUSCULAS y minúsculas afecta la compilación
Código: [Seleccionar]
public rueda(){
tipo = "";
marca= "";
grosor = 0.0;
diametro = 0.0;
 }

aquí por igual (ortografía)
Código: [Seleccionar]
public void setMarca(String valorMarca){
 Marca = valorMarca;
 }

 aquí olvidaste la llave de apertura "{" que sierra con la que si indicaste
Código: [Seleccionar]
public void setGrosor(double valorGrosor)
grosor = valorGrosor;
 }

 el problema con tu if else, es que tienes todos los mensajes dentro de un solo if else cuando deberían ser 2 bloques para que los mensajes salgan
bien por pantalla. algo así: if else if else para los mensajes de grande,mediano,peque?o y otro if else para el mensaje del grosor. También en el diámetro del mensaje de vehículo grande tienes <= y debería ser diámetro > 1.4
Código: [Seleccionar]
public void comprobarDimensiones (){
       
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");
     }
else 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");
        }

Salu2!
« Última modificación: 15 de Junio 2014, 16:25 por Sniper »
while(estesVivo)
{
  aprende();
  ayuda();
  enseña();
}
if(mueres){teRecordaran();}

 

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