Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: Beginer en 16 de Septiembre 2014, 17:09

Título: if else, if else if. Ejemplos de uso java. (CU00636B)
Publicado por: Beginer en 16 de Septiembre 2014, 17:09
Buenos días aquí envío mi ejercicio de la entrega CU000636B
Código: [Seleccionar]
/**
 * Clase para objetos de tipo Ruedas
 */
public class Rueda
{
    // Declaracion de variables
    private String tipo;
    private double grosor;
    private double diametro;
    private String marca;

    /**
     * Constructor de objetos de la clase Rueda
     */
    public Rueda()
    {
        // initializando las variables
        tipo = "";
        grosor = 0;
        diametro = 0;
        marca = "";
    }

    /**
     * Métodos para asignar valores a los atributos.
     */
    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;
    }
   
    /**
     * Métodos para recuperar los valores de los atributos
     */
    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) {
           System.out.println ("La rueda es para vehiculo grande");
        }
        else if (diametro <= 1.4 && diametro > 0.8){
            System.out.println ("La rueda es para vehículo mediano");
        }
        else {System.out.println ("La rueda es para 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");}
    }
   
}

Espero sus apreciaciones.. desde ya agradecido.
Saludos cordiales..
Título: Re:if else, if else if. Ejemplos de uso java. (CU00636B)
Publicado por: toni_apr en 16 de Septiembre 2014, 22:17
Hola Beginer
La clase está perfecta, declaración, iniciación de atributos
Confección de métodos set y get
Así como el método

public void comprobarDimensiones ()

con los dos if para dilucidar las dimensiones.

OK  :)
Saludos
Título: Re:if else, if else if. Ejemplos de uso java. (CU00636B)
Publicado por: Guille en 01 de Octubre 2014, 19:35
Saludos,

Este ejercicio lo resolvi mas o menos igual. Mas tarde su rl codigo

Una pregunta.

El programa ejecuta todos los If?

O sea en este caso, el siempre va ha leer el ultimo If aunque de inicio
La rueda sea>1.4
Título: Re:if else, if else if. Ejemplos de uso java. (CU00636B)
Publicado por: toni_apr en 01 de Octubre 2014, 20:48
Hola Guille

Respondiendo a tu pregunta:
Si en un método hay varios if, se leerán o ejecutarán todos en el orden en que aparecen.

Otra cosa es que si un if tiene varios else if y un else, el compilador comprobará las expresiones: primero del if, si su expresión es cierta, ejecuta sus instrucciones y no se molestará en leer los else if y el else final para pasar al siguiente if.
Si la expresión del if es false, lee la condición del primer else if y hace lo propio si es cierta ejecuta sus instrucciones y se salta los otros else if. Y así haría con todos los else if y el else final

Guille, si no presentas el ejercicio porque no lo terminaste, porque tienes dudas, has de hacer las prácticas que se proponen en la lección

Citar
/* Ejemplo - aprenderaprogramar.com */
   //if sencillo
    if ( admitido == true) { System.out.println ("Se ha admitido el valor"); }
 
   //if else sencillo
            if ( admitido == true) {
            System.out.println ("Se ha admitido el valor");
        } else {
            System.out.println ("No se ha admitido el valor");
        }
    //if con else if y cláusula final else
    if (DesplazamientoX == 0 && DesplazamientoY == 1) {
            System.out.println ("Se procede a bajar el personaje 1 posición");
        }
         else if (DesplazamientoX == 1 && DesplazamientoY == 0) {
            System.out.println ("Se procede a mover el personaje 1 posición a la derecha"); }
 
        else if (DesplazamientoX == -1 && DesplazamientoY == 0) {
            System.out.println ("Se procede a mover el personaje 1 posición a la izquierda");
        }
         else {
            System.out.println ("Los valores no son válidos");
        }
 
Intenta compilar este código en una clase. Para ello declara la clase, declara las variables que intervienen, inicialízalas en un constructor, e incorpora tres métodos que se correspondan con los tres ejemplos de uso de if que hemos visto.

Los ejercicios que proponemos están pensados para ayudar a entender la teoría con estas prácticas.

Saludos
Título: Re:if else, if else if. Ejemplos de uso java. (CU00636B)
Publicado por: Guille en 01 de Octubre 2014, 21:21
Muchas gracias Toni,

Hago cada practica, no me las salto.. esta ya la hice, la voy a subir mas tarde, es que
estudio las lecciones en la biblioteca y la pc con Blue esta en la casa.

Gracias,
 
Título: Re:if else, if else if. Ejemplos de uso java. (CU00636B)
Publicado por: Guille en 02 de Octubre 2014, 02:40
Este es el mio

Código: [Seleccionar]
public class Rueda
{

    private String tipo, marca ;
    private double grosor, diametro;

    /*
    Constructor for objects of class Rueda
     */
public Rueda()
    {
        // initialise instance variables
        tipo="";
        grosor=0;
        diametro=0;
        marca="";

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

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

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

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

    // Getters

    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>0.8 && diametro <= 1.4) {
            System.out.println(" La rueda es para un vehículo mediano");
        }

        else if ( diametro> 1.4) {
            System.out.println("La rueda es para un vehículo grande");

        }

        else {System.out.println( " La rueda es para un vehículo pequeño");}

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

        }
    }}
Título: Re:if else, if else if. Ejemplos de uso java. (CU00636B)
Publicado por: toni_apr en 02 de Octubre 2014, 22:59
Hola Guille
Tu ejercicio está bien.
Solo un par de cosas

Este método
public String gettipo()
debería ser
public String getTipo()
El programa funciona igual, pero si nos facilitamos el trabajo, ganamos nosotros.

Esta codición del método public void comprobarDimensiones()
if (diametro>1.4 && grosor <0.4 || diametro> 0.8 && diametro <= 1.4 && grosor < 0.25)
deberíamos encapsularla para entenderla nosotros y obligar al compilador a seguir nuestras indicaciones según la especificación del ejercicio
if ( (diametro>1.4 && grosor <0.4)  || (diametro> 0.8 && diametro <= 1.4 && grosor < 0.25) )

Saludos