Programación General > C/C++

 Datos Demasiados Grandes

(1/2) > >>

jubilubi:
¿Como le puedo hacer para que en un programa acepte numeros muy grandes, aunque esto afecte el resultado final?
Entiendo que existen rangos en los tipos de datos, pero quisiera que me aceptara cualquier clase de numero, desde un 5, pasando por 89.315, hasta 10e-140.
Se que va a ocurrir un error de truncamiento al introducir datos muy grandes, pero no importa, lo que me interesa es que realize las operaciones aunque el resultado sea solamente una aproximación del resultado real. Les agradeceria mucho su ayuda.

plaf:
podrias manejar los numeros guardandolos en notacion cientifica, con un float q sea el numero y un int el exponente
por ejemplo si quieres sumar 2 numeros primero ves si los exponentes son parecidos, si son muy diferentes desprecias el mas chico, y si son parecidos divides el mayor por 10 elevado la diferencia de exponentes y los sumas. y asi haces ese tipo de cosas con las demas operaciones

chuidiang:
Utiliza double por todos lados. Este tipo es el que te dará el máximo rango posible.

De todas formas, sigue teniendo un límite (enorme, pero lo tiene). Si aun así se te queda pequeño, no te queda más remedio que hacerte tu propio código para tratamiento de todos estos números.

Se bueno.

QliX=D!:
O usar alguna libreria para numeros grandes, hay varias dando Vueltas por la net.

CiRRuS:
Librerias de números gordos que puedes encontrar son:

Para C la LIP, que usa variables verylong.

Para C++ la de LiDIA, que usa variables bigint. Personalmente prefiero mejor esta, a parte que en C++ se hace más llevadero el uso de operadores y demás.

Nos vemos

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa