Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: Beginer en 16 de Septiembre 2014, 17:09
-
Buenos días aquí envío mi ejercicio de la entrega CU000636B
/**
* 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..
-
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
-
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
-
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
/* 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
-
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,
-
Este es el mio
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");
}
}}
-
Hola Guille
Tu ejercicio está bien.
Solo un par de cosas
1º Este método
public String gettipo()
debería ser
public String getTipo()
El programa funciona igual, pero si nos facilitamos el trabajo, ganamos nosotros.
2º 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