Ver Mensaje Individual
  #20 (permalink)  
Antiguo 18/05/2016, 14:38
Fw190
 
Fecha de Ingreso: junio-2010
Ubicación: Madrid
Mensajes: 620
Antigüedad: 14 años, 6 meses
Puntos: 73
Respuesta: Saber si un double se ha desbordado

Si se trata de un algoritmo de fuerza bruta, no creo que sea conveniente hacer comprobaciones de cada operando antes de operar para ver si va a haber overflow, te podrías eternizar. Si crees que puedes tener overflow de un double, como ya te comenté, prueba a ver si dispones del tipo long double. Otras opciones podrían ser:

En ocasiones, el cambiar el orden de las operaciones puede obrar maravillas.

Utiliza una librería de precisión arbitraria. No indicas qué compilador utilizas, para el compilador GNU tienes la GMP, y buscando podrás encontrar otras.

Algunos compiladores disponen de un tipo qfloat de 384 bits (no, no es un error). Esto te daría unos 100 dígitos de precisión. No recuerdo en este momento el rango, pero creo que es superior al de long double. Con este tipo tienes, por ejemplo, el compilador Lcc-Win32 (creo que hay también una versión para 64 bits).