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

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


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

Desconectado Desconectado

Mensajes: 10


elige siempre la opción más divertida 8)


Ver Perfil
Programa "Multiplos de 2"
« en: 21 Agosto 2015, 20:23 pm »


Hola...Pregunta ¿Por qué al ejecutar este código imprime solo ceros?.


Código
  1. #include <stdio.h>
  2.  
  3. int main(){
  4.  
  5. int dos = 1,n;
  6.  
  7. printf( "Introduzca -1 para comenzar: ");
  8. scanf( "%d", &n );
  9.  
  10. if ( n == -1 ){
  11.  
  12. while ( n == -1 ){
  13.  
  14.  dos *= 2;
  15.  
  16.  printf( "%d\n", dos );
  17.  
  18. }
  19.  
  20. }
  21.  
  22. return 0;
  23. }

Solo es un ejercicio que se tiene que imprimir los múltiplos de 2 pero en un "ciclo infinito" y quisiera saber porque solo imprime 0 :), saludos. 


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Programa "Multiplos de 2"
« Respuesta #1 en: 21 Agosto 2015, 20:33 pm »

ciclo infinito, desbordaste la variable en las primeras 32 rondas, la memoria volvió a 0 y 2*0 = 0

si lo guardas en un archivo o detienes la consola muy rapido verás

Código:
Introduzca -1 para comenzar: -1
2
4
8
16
32
64
128
256
512
1024
2048
4096
8192
16384
32768
65536
131072
262144
524288
1048576
2097152
4194304
8388608
16777216
33554432
67108864
134217728
268435456
536870912
1073741824
-2147483648
0
0
0
0
0


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
furciorifa

Desconectado Desconectado

Mensajes: 94


Ver Perfil
Re: Programa "Multiplos de 2"
« Respuesta #2 en: 25 Agosto 2015, 03:22 am »

Efectivamente como dijo el moderador que es de los mejores programadores que conozco virtualmente, si hace tu ciclo, pero se desborda la capacidad del int e imprime 0.
En línea

Mientras

Desconectado Desconectado

Mensajes: 19


Ver Perfil
Re: Programa "Multiplos de 2"
« Respuesta #3 en: 25 Agosto 2015, 05:59 am »

Eso imprime potencias de 2. Los múltiplos de 2 son 2,4,6,8,10,12..... .

*Eso si las potencias están incluidas en lo múltiplos.


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Programa "Multiplos de 2"
« Respuesta #4 en: 25 Agosto 2015, 06:16 am »

Eso imprime potencias de 2. Los múltiplos de 2 son 2,4,6,8,10,12..... .

*Eso si las potencias están incluidas en lo múltiplos.




Error, no imprime los multiplos de 2, solo imprime sus potencias
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Mientras

Desconectado Desconectado

Mensajes: 19


Ver Perfil
Re: Programa "Multiplos de 2"
« Respuesta #5 en: 25 Agosto 2015, 06:42 am »

No dije eso ?  :¬¬
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Programa "Multiplos de 2"
« Respuesta #6 en: 25 Agosto 2015, 06:52 am »

Sorry xD dislexia jejeje tienes razón
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
furciorifa

Desconectado Desconectado

Mensajes: 94


Ver Perfil
Re: Programa "Multiplos de 2"
« Respuesta #7 en: 25 Agosto 2015, 07:15 am »

Error, no imprime los multiplos de 2, solo imprime sus potencias

Una potencia por definición es multiplo de la base.
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Programa "Multiplos de 2"
« Respuesta #8 en: 25 Agosto 2015, 07:34 am »

Una potencia por definición es multiplo de la base.

Claro, pero "las potencias de 2" no son "los multiplos de 2" sino son "algunos multiplos de 2", en nuestro idioma los primeros 2 textos implican la palabra "todas" son embargo en la teoria de numeros finitos el grupo compuesto por 2x es un subgrupo bastante pequeño del grupo 2x

 :P espero haya dado a entender mi punto que senti que pudo no haberse aclarado inicialmente
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
do-while


Desconectado Desconectado

Mensajes: 1.276


¿Habra que sacarla de paseo?


Ver Perfil
Re: Programa "Multiplos de 2"
« Respuesta #9 en: 25 Agosto 2015, 09:53 am »

son embargo en la teoria de numeros finitos el grupo compuesto por 2x es un subgrupo bastante pequeño del grupo 2x

Un apunte técnico {n | n entero}, {2n | n entero} y {2n | n entero} tienen la misma cantidad de elementos. Y otro asunto, los dos primeros conjuntos ni siquiera son grupos multiplicativos, son grupos aditivos y el tercero no es grupo aditivo, es un grupo multiplicativo, así que no se puede decir que sea un subgrupo de ninguno de los dos conjuntos anteriores, ya que la operación con la que trabajan no es la misma.

Por lo demás todo correcto.

¡Saludos!
En línea

- Doctor, confundo los números y los colores.
- Vaya marrón.
- ¿Marrón? ¡Por el culo te la hinco!
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines