Foros del Web » Programación para mayores de 30 ;) » C/C++ »

que tipo de variable se usa para sumar 2 sumeros de 39 caracteres

Estas en el tema de que tipo de variable se usa para sumar 2 sumeros de 39 caracteres en el foro de C/C++ en Foros del Web. Hola amigos. Me he dado cuenta que no se puede utilizar variables int para sumar 2 numeros que tienen mas de 9 caracteres o 10, ...
  #1 (permalink)  
Antiguo 25/04/2011, 16:45
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 16 años, 7 meses
Puntos: 188
que tipo de variable se usa para sumar 2 sumeros de 39 caracteres

Hola amigos.

Me he dado cuenta que no se puede utilizar variables int para sumar 2 numeros que tienen mas de 9 caracteres o 10, no se.

Suponiendo que mis numeros tienen 40 digitos, que tipo de variables debo utilizar. muchas gracias.
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.
  #2 (permalink)  
Antiguo 25/04/2011, 17:12
 
Fecha de Ingreso: abril-2011
Mensajes: 88
Antigüedad: 13 años
Puntos: 24
Respuesta: que tipo de variable se usa para sumar 2 sumeros de 39 caracteres

Depende de que tipo de dígitos. Si te refieres a dígitos tipo 3.6E +/- 50 por ejemplo puedes usar tipo double (8 bytes) pero si te hace falta un número de 40 dígitos no iguales 0, entonces tienes un problema un tipo entero positivo de 8 bytes podría tener como máximo un valor de 18,446,744,073,709,551,615.

Lee la descripción de cada tipo.
http://desarrollodejuegos.net/variables-y-arrays

En un caso extremo, aunque no veo la necesidad de tantos carácteres, podrías partir un número en varias variables...
__________________
Foros Desarrollo de Juegos
  #3 (permalink)  
Antiguo 25/04/2011, 17:18
 
Fecha de Ingreso: diciembre-2010
Mensajes: 20
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: que tipo de variable se usa para sumar 2 sumeros de 39 caracteres

LOL XD

Necesitas una biblioteca de funciones que te permitan realizar "operaciones de precisión arbitraria". Como las que se usa para criptografía asimétrica.

En C++, libre:
https://mattmccutchen.net/bigint/index.html

http://en.wikipedia.org/wiki/Arbitrary-precision_arithmetic
  #4 (permalink)  
Antiguo 25/04/2011, 21:50
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 16 años, 7 meses
Puntos: 188
Respuesta: que tipo de variable se usa para sumar 2 sumeros de 39 caracteres

Lo que necesito es obtener el termino numero 180 de la sucesion de fibonachi.

Pero solo me muestra bien bien hasta el termino numero 48, en adelante me comienza a mostrar numeros negativos.

Imagino que mi variable entera no puede almacenar tantos digitos.

_______________-

Supongamos que quiero sumar

var_1 = 12344132432432423432142354253456346546437665756775 876; //(40 digitos)
var_2 = 65746757567567657567456742534563465462343432546488 987; //(40 digitos)

total = var_1 + var_2;


Es esto lo que necesito, gracias.
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.
  #5 (permalink)  
Antiguo 26/04/2011, 02:17
 
Fecha de Ingreso: junio-2010
Ubicación: Madrid
Mensajes: 620
Antigüedad: 13 años, 10 meses
Puntos: 73
Respuesta: que tipo de variable se usa para sumar 2 sumeros de 39 caracteres

En efecto, una variable entera no admite tantos dígitos. Cuando se produce el desbordamiento, se pierde lo quer correspondería a los dígitos más significativos, y lo que queda puede corrersponder a lo que la máquina entiende como número negativo.

Para lo que quieres hacer hay alguna opción:

Buscar, como te han indicado, una biblioteca para precisión arbitraria.

Almacena los números como arrays de caracteres. Súmalos como lo harías con lápiz y papel, sumando los dígitos individualmente y teniendo en cuenta los acarreos.

Algunos compiladores C disponen de un tipo qfloat de 384 bits (aprox. 100 dígitos de precisión). Por ejemplo, el Lcc-Win32 (es gratuito siempre que no se utilice para aplicaciones comerciales). Esto debería bastar.
  #6 (permalink)  
Antiguo 26/04/2011, 11:14
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 16 años, 7 meses
Puntos: 188
Respuesta: que tipo de variable se usa para sumar 2 sumeros de 39 caracteres

muchas gracias exelentes respuestas.

Tambien encontre la clase bibint. http://sourceforge.net/projects/cpp-bigint/

Ya estoy trabajando con ella.

Un saludo.
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.

Etiquetas: caracteres, tipo, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:19.