elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Operador lógico OR
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Operador lógico OR  (Leído 2,739 veces)
OlgaFuentes

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Operador lógico OR
« 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
  1. int n;
  2.  
  3. printf("Introduzca un número entre 1 y 99: ");
  4. scanf("%d", &n);
  5.  
  6. if((n%10)==(2||3)){
  7. printf("El número termina en 2 o 3");
  8. }
  9. else){
  10. printf("El número no termina en 2 o 3");
  11. }

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


« Última modificación: 9 Octubre 2022, 19:47 pm por K-YreX » En línea

Lieutenant McFarley

Desconectado Desconectado

Mensajes: 49



Ver Perfil
Re: Operador lógico OR
« Respuesta #1 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) )

  {
     ...
  }


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Nero y CD de musica,NO es logico
Software
Layyer 4 1,926 Último mensaje 12 Junio 2003, 16:14 pm
por kåhjî£
Problema lógico con bucle
Java
Debci 3 2,997 Último mensaje 1 Diciembre 2009, 22:52 pm
por Caballero Maldito
como se usa operador logico AND en numeros???
Programación Visual Basic
x64core 9 5,318 Último mensaje 8 Junio 2011, 13:28 pm
por 79137913
error logico c
Programación C/C++
Kenji-chan 4 2,117 Último mensaje 13 Diciembre 2016, 00:57 am
por Kenji-chan
R se convierte en operador para toda España: ¿quinto operador a la vista?
Noticias
wolfbcn 0 2,140 Último mensaje 26 Abril 2019, 14:30 pm
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines