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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Hola me sacan de una duda?[C]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 3 Ir Abajo Respuesta Imprimir
Autor Tema: Hola me sacan de una duda?[C]  (Leído 8,402 veces)
flacc


Desconectado Desconectado

Mensajes: 854



Ver Perfil WWW
Hola me sacan de una duda?[C]
« en: 28 Noviembre 2010, 03:15 am »

Hola, estoy travado con esto, tengo que comprobar si el dígito ingresado es multiplo de 2 y 5, pero quiero ahorrarme código haciendo esto:

Código:
if (( (valor % 2) == 0) && ( (valor % 5) == 0) ))
{
                printf(" bla bla bla"\n);
}
else
{
      printf("blablabla"\n);

entonces para que se entienda... el código que quiero hacer en palabras seria asi:

Código:
Si es que ((Si valor es multiplo de 2) y ( valor es multiplo de 5)
{
            imprimirpantalla (codigo);
}
Si no
{
      imprimirpantalla ( codigo);

se entiende?... mejor dicho.. este codigo
Código:
(( (valor % 2) == 0) && ( (valor % 5) == 0) ))
hace lo que nesecito?... a mi me da que no pero queria consultarlo con ustedes...saludoss


« Última modificación: 28 Noviembre 2010, 03:16 am por mini_nauta » En línea

Beakman

Desconectado Desconectado

Mensajes: 190



Ver Perfil WWW
Re: Hola me sacan de una duda?[C]
« Respuesta #1 en: 28 Noviembre 2010, 04:09 am »

Código
  1. if( numero%2 == 0 && numero%5 ==0 )
  2. cout << "El numero es divisible por 2 Y 5";
  3.  
Esta bien, eso. Te dice si es divisible por ambos, 2 y 5.
Por ejemplo 10


En línea

flacc


Desconectado Desconectado

Mensajes: 854



Ver Perfil WWW
Re: Hola me sacan de una duda?[C]
« Respuesta #2 en: 28 Noviembre 2010, 06:35 am »

gracias, pero sacame de una duda mas, es que estoy sumamente enredado con los operadores logicos en general, osea, al decir yo && tu, digo "yo y tu", o estoy operando con los balores boleanos de "yo" y "tu", no se si me entiendes, he visto montones de explicaciones, y justo cuando creo haber entendido leo otra y vuelvo al inicio...
por ejemplo el || se puede usar como or, aparte de comparar valores boleanos( true y false creo)... pero si me lo pudieras explicar mejor esto porfavor... gracias y saludos

modificacion...


esperen un momento... ya note el problema, y es que no tengo idea de cual es... haber miren, el problema no es el código sino el so, tengo windows 7 home premium(venia incluido), y pues cuando ejecuto el exe compilado con dev c/c++, mesale la ventana pidiendo el numero(funcion scanf), pongo el numero y doy enter, acto seguido se pega, otro enter y deja de funcionar el exe.... que podria ser el problema?... tengo instalada conio para dev c.. o desintalo y reinstalo todo?...saludos
« Última modificación: 28 Noviembre 2010, 06:43 am por mini_nauta » En línea

Beakman

Desconectado Desconectado

Mensajes: 190



Ver Perfil WWW
Re: Hola me sacan de una duda?[C]
« Respuesta #3 en: 28 Noviembre 2010, 07:02 am »

Para comparar valores booleanos.
para && tiene que ser verdadero si o si, todas las partes.
para || solo se necesita uno en verdadero.
Código
  1. bool var1,var2;
  2.  
  3. (...)
  4.  
  5. if( var1 && var2 )
  6. cout << "Ambas son verdaderas" << endl;
  7. else
  8. {
  9. cout << "Puede que solo una este en falso" << endl;
  10. cout << "O puede que las dos esten en falso" << endl;
  11. }
  12.  
  13.  
  14. if( var1 || var2 )
  15. cout << "Una o dos en verdadero" << endl;
  16. else
  17. cout << "Ninguna de las 2 esta en verdadero" << endl;
  18.  
  19. if( !var1 || !var2 )
  20. cout << "Una o dos en falso" << endl;
  21. else
  22. cout << "Las dos estan en verdadero" << endl;
  23.  

No entendí muy bien el otro problema que tenias.
Pero no creo que sea por el SO, al menos que sea un programa muy grande no creo.
En línea

flacc


Desconectado Desconectado

Mensajes: 854



Ver Perfil WWW
Re: Hola me sacan de una duda?[C]
« Respuesta #4 en: 29 Noviembre 2010, 12:19 pm »

cuando intento ejecutar lo que compilo el exe se pega y se cierra...
En línea

Superplay


Desconectado Desconectado

Mensajes: 670



Ver Perfil
Re: Hola me sacan de una duda?[C]
« Respuesta #5 en: 30 Noviembre 2010, 00:00 am »

Para comparar valores booleanos.
para && tiene que ser verdadero si o si, todas las partes.
para || solo se necesita uno en verdadero.
Código
  1. bool var1,var2;
  2.  
  3. (...)
  4.  
  5. if( var1 && var2 )
  6. cout << "Ambas son verdaderas" << endl;
  7. else
  8. {
  9. cout << "Puede que solo una este en falso" << endl;
  10. cout << "O puede que las dos esten en falso" << endl;
  11. }
  12.  
  13.  
  14. if( var1 || var2 )
  15. cout << "Una o dos en verdadero" << endl;
  16. else
  17. cout << "Ninguna de las 2 esta en verdadero" << endl;
  18.  
  19. if( !var1 || !var2 )
  20. cout << "Una o dos en falso" << endl;
  21. else
  22. cout << "Las dos estan en verdadero" << endl;
  23.  

No entendí muy bien el otro problema que tenias.
Pero no creo que sea por el SO, al menos que sea un programa muy grande no creo.

Tio, lo tuyo está bien... pero si pregunta para C y le contestamos C++ es como si un ruso pregunta en español (que le cuesta) por algo y le contestamos en catalán.
En línea



"Nací siendo un virus" By Windows.
Este mensaje no es por ofender, yo uso Windows también, simplemente... es broma ;)
Akai


Desconectado Desconectado

Mensajes: 823



Ver Perfil
Re: Hola me sacan de una duda?[C]
« Respuesta #6 en: 30 Noviembre 2010, 00:11 am »

Volviendo al tema del post:

cuando intento ejecutar lo que compilo el exe se pega y se cierra...

Posiblemente tu programa se esté ejecutando correctamente, pero debido a que lo estás ejecutando bajo windows, tu programa abre una consola, empieza su ejecución, hace lo que tenga que hacer, la finaliza y cierra la consola.  Si quieres mantener lo que imprima el programa sin recurrir a pausas (no poner pausas sería lo recomendable)deberías mirarte esto:

http://foro.elhacker.net/programacion_cc/ejecutar_programas_en_windows_sin_necesidad_de_pausas_system_pause_etc-t306837.0.html
En línea

flacc


Desconectado Desconectado

Mensajes: 854



Ver Perfil WWW
Re: Hola me sacan de una duda?[C]
« Respuesta #7 en: 30 Noviembre 2010, 00:49 am »

Tiene pausas sysmtem>nul, pero me he fijado en detalles, por eso mismo voy a formatear la portatil, por ejemplo me pasa que a veces al abrir el aimp se pega totalmente la pc, o firefox, o cosas tipicas, jugar escuchando musica, intentar cerrar algo... asi que por seacaso voy a limpiar la informacion de respaldo y instalar un copia limpia(primero a descargarla por que el win lo traia preinstalado esta cosa)...saludoss
En línea

flacc


Desconectado Desconectado

Mensajes: 854



Ver Perfil WWW
Re: Hola me sacan de una duda?[C]
« Respuesta #8 en: 2 Diciembre 2010, 07:38 am »

Hola de nuevo, miren el problema esta, yo tengo esto para comprobar por separado si el n° ingresado es multiplo de 2 y de 5, lo hago sin pauses, lo ejecuto desde  la consola, y nada no hay resultado...  este es el codigo:

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main(int argc, char *argv[])
  5. {
  6.  int valor;
  7.  printf("introduzca un numero\n");
  8.  scanf("%d", valor);
  9.  /* comprobar si es multiplo de 2*/
  10.  if (valor % 2 == 0)
  11.  {
  12.            printf("Multiplo de 2: si\n");
  13.            }
  14.  else {
  15.       printf("Multiplo de 2: no\n");
  16.       }
  17.  
  18.  /* comprobar si el multiplo de 5*/
  19.  if (valor % 5 == 0)
  20.  {
  21.            printf("Multiplo de 5: si\n");
  22.            }
  23.  else {
  24.       printf("Multiplo de 5: no\n");
  25.       }
  26.  return 0;
  27. }
  28.  

si me pudieran dar otra manito y explicarme lo que esta mal se los agradeceria...saludoss
En línea

leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: Hola me sacan de una duda?[C]
« Respuesta #9 en: 2 Diciembre 2010, 07:40 am »

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main(int argc, char *argv[])
  5. {
  6.  int valor;
  7.  printf("introduzca un numero\n");
  8.  scanf("%d", valor);
  9.  /* comprobar si es multiplo de 2*/
  10.  if (valor % 2 == 0)
  11.  {
  12.            printf("Multiplo de 2: si\n");
  13.            }
  14.  else {
  15.       printf("Multiplo de 2: no\n");
  16.       }
  17.  
  18.  /* comprobar si el multiplo de 5*/
  19.  if (valor % 5 == 0)
  20.  {
  21.            printf("Multiplo de 5: si\n");
  22.            }
  23.  else {
  24.       printf("Multiplo de 5: no\n");
  25.       }
  26.  while(getchar() != '\n');
  27.  getchar();
  28.  return 0;
  29. }
En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
Páginas: [1] 2 3 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Me sacan o se me desconecta el counter?
Juegos y Consolas
jpmo4 6 4,606 Último mensaje 16 Mayo 2008, 20:31 pm
por jpmo4
Hola una duda
Programación C/C++
ellandax 3 1,737 Último mensaje 17 Abril 2013, 02:40 am
por rir3760
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines