Título: Operador lógico OR Publicado por: OlgaFuentes en 6 Octubre 2022, 16:44 pm ¡Hola!
Estaba desarrollando un programa en el que, introducido un número, indique si termina en 2 o 3. Por lo tanto, escribí algo tal que así: Código
Sin embargo, no funciona bien. Detecta únicamente que los números terminados en 1 cumplen la condición if((n%10)==(2||3)), lo cual es falso. Entiendo que el error está ahí, pero ¿cuál es? MOD: El código debe ir entre etiquetas de Código GeSHi Título: Re: Operador lógico OR Publicado por: Lieutenant McFarley en 6 Octubre 2022, 18:24 pm Cuando escribes:
if((n%10)==(2||3)) el resultado de (2||3) = 1 por lo tanto es como si escribieras: if((n%10)==1 y por tanto solo se verifica cuando (n%10)==1 con lo cual solo se verifica para nºs terminados en 1. Para que compruebe si terminan en 2 o en 3 (cualquiera de ellos indistintamente) debería ser: if( (n%10==2) || (n%10==3) ) { ... } |