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.
| |||
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 +. |
| |||
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 |
| |||
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 |
| |||
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 +. |
| |||
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. |
| |||
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: |