Foro de elhacker.net

Programación => Java => Mensaje iniciado por: Dem0ny en 11 Noviembre 2008, 19:05 pm



Título: Duda && en sentencia while
Publicado por: Dem0ny en 11 Noviembre 2008, 19:05 pm
Veamos, al grano. Al hacer un programa y usar while, la condición que posee este, puede llevar 3 subcondiciones?

es decir

a>x, b<x  y z=0 por ej.

En el caso de ser posible como sería?

while (a>x && b<x && z==0){

while (a>x & b<x & z==0){

while (a>x && b<x) && (z==0)){


Y mil cosas mas se me ocurren, pero todo mal, alguien puede darme una orientación, en realidad eske toy haciendo a lo bruto, porke lo unico que quiero es verificar los numeros que hay entre a y b y que una operación almacenada en la variable z sea = 0. Aunke se os ocurra otra forma de hacerlo y me lo digais contestarme si con && se pueden usar varias condificiones en la misma sentencia.

Gracias de antemano.!


Título: Re: Duda && en sentencia while
Publicado por: Casidiablo en 11 Noviembre 2008, 20:15 pm
Lo que recibe el while es un simple valor booleano, por lo que puedes anidar cuantas condiciones quieras, siempre y cuando todo junto retorne TRUE o False.

Un saludo!


Título: Re: Duda && en sentencia while
Publicado por: Dem0ny en 11 Noviembre 2008, 20:42 pm
Entonces porque me da error, es un fallo de sintaxis o que? :s


Título: Re: Duda && en sentencia while
Publicado por: Nakp en 11 Noviembre 2008, 20:55 pm
que error te da?


Título: Re: Duda && en sentencia while
Publicado por: Dem0ny en 11 Noviembre 2008, 20:58 pm
Vale, sorry, nada que ver con while, me dice que el operador ">" no se puede aplicar a boolean, int, while expresión... y tal.

Pero no lo comprendo...  :-\ si ahi el comparador ... nose...


Título: Re: Duda && en sentencia while
Publicado por: -Ramc- en 11 Noviembre 2008, 21:43 pm
Vale, sorry, nada que ver con while, me dice que el operador ">" no se puede aplicar a boolean, int, while expresión... y tal.

Pero no lo comprendo...  :-\ si ahi el comparador ... nose...
De que tipo son las variables y cual es el error exacto??


Título: Re: Duda && en sentencia while
Publicado por: Nakp en 11 Noviembre 2008, 22:16 pm
mejor dicho... pega el código :rolleyes:


Título: Re: Duda && en sentencia while
Publicado por: juancho77 en 11 Noviembre 2008, 23:59 pm
Código
  1. while (a>x && b<x && z==0) { }
es incorrecto ya que todas esas condiciones deben estar bien englobadas en sus parentesis. Te dice que el relacional ">" no puede ser aplicado a boolean, int porque al operar segun las reglas de precedencia en java, esa oracion seria equivalente (tal y como esta escrita) a :
Código
  1. while( a>(x&&b) ...
La forma correcta de asegurarse que todo este bien, aun sin entender las reglas de precedencia, es aplicar parentesis:
Código
  1. while (  (a>x) && (b<x) && (z==0)) {}


Saludos.


Título: Re: Duda && en sentencia while
Publicado por: Dem0ny en 14 Noviembre 2008, 12:21 pm
Solucionado! Gracias a todos :D


Título: Re: Duda && en sentencia while
Publicado por: sapito169 en 15 Noviembre 2008, 01:22 am
una recomendacion es que pongas simpre todos los parentesis necesarios sin execpcion asi te aseguras que nunca buelvas a tener ese problema