• Martes 30 de Abril de 2024, 01:03

Autor Tema:  Programa numero palindrome  (Leído 2960 veces)

alberto07

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Programa numero palindrome
« en: Domingo 27 de Septiembre de 2009, 06:38 »
0
Hola a Todos!

He hecho un programa el cual me obtiene el palindrome de un numero, sumandolo y sumarle el inverso hasta que se obtiene un palindrome.

El caso es que cuanto digito un numero el cual requier mas de 15 o 16 iteraciones por ej. 89 que requiere 24  la pantalla se me queda en 000000 y asi, que tengo que cerrar el programa. Podrian decirme la cusa de esto?

Gracias de antemano.

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Programa numero palindrome
« Respuesta #1 en: Domingo 27 de Septiembre de 2009, 10:38 »
0
Por supuesto, el codigo esta mal.

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

alberto07

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Re: Programa numero palindrome
« Respuesta #2 en: Domingo 27 de Septiembre de 2009, 18:15 »
0
Pero si me funciona para muchos otros numeros, hasta 15 o 16 iteraciones. Que puede tener de malo el codigo.

Invertir es la funcion que invierte el numero.
« última modificación: Lunes 28 de Septiembre de 2009, 06:04 por alberto07 »

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Programa numero palindrome
« Respuesta #3 en: Domingo 27 de Septiembre de 2009, 20:24 »
0
No esta el codigo completo y no se que hace exactamente invertir pero tene en cuenta que num tiene un limite.

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

alberto07

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Re: Programa numero palindrome
« Respuesta #4 en: Lunes 28 de Septiembre de 2009, 03:53 »
0
Esta es la funcion invetrir

Código: C
  1. //funcion que invierte un numero
  2. int invertir(int n)
  3. {
  4.   long d, i=0;
  5.   while(n>0)
  6.   {
  7.     d=n%10;
  8.     i=i*10+d;
  9.     n/=10;
  10.   }
  11.    return i;
  12. }
  13.  
A cual limite te refieres?

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: Programa numero palindrome
« Respuesta #5 en: Lunes 28 de Septiembre de 2009, 11:23 »
0
¿Seguro que no es un desbordamiento de long? A lo mejor debes usar unsigned long long.

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Programa numero palindrome
« Respuesta #6 en: Lunes 28 de Septiembre de 2009, 12:15 »
0
Las variables tienen un rango, averigua cual es el limite de long.

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

alberto07

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Re: Programa numero palindrome
« Respuesta #7 en: Lunes 28 de Septiembre de 2009, 16:56 »
0
OK, no me habia dado cuenta, entonces habra alguna forma de extender el rango de  una variable?

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: Programa numero palindrome
« Respuesta #8 en: Lunes 28 de Septiembre de 2009, 16:59 »
0
Cita de: "alberto07"
entonces habra alguna forma de extender el rango de una variable?
Cita de: "m0skit0"
A lo mejor debes usar unsigned long long.
:huh:

alberto07

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Re: Programa numero palindrome
« Respuesta #9 en: Lunes 28 de Septiembre de 2009, 18:28 »
0
Me Sigue dando el mismo error, a parte es en C y creo que usigned long long es para C++, si no me quivoco.

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: Programa numero palindrome
« Respuesta #10 en: Martes 29 de Septiembre de 2009, 09:59 »
0
Cita de: "alberto07"
creo que usigned long long es para C++
También para C. C++ lo que añade son las clases y todo el paradigma de orientación a objetos.

Ponte algo compilable que dé ese mismo error y ya lo depuramos.