elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 22:34  


Tema destacado: Suscripción al boletín mensual de elhacker.net

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse)
| | |-+  Obtener más precisión que long double en C?¿?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Obtener más precisión que long double en C?¿?  (Leído 474 veces)
jhonsc

Desconectado Desconectado

Mensajes: 43


Ver Perfil
Obtener más precisión que long double en C?¿?
« en: 3 Febrero 2012, 20:32 »

Buenas, ¿alguien me dice si se puede obtener más precisión que la de long double en C? Lo pregunto por que estoy haciendo un programa que me calcule pi (sin un número de cifras definido, hasta que lo cierre) y ¡long double se queda corto para pi!  :xD


En línea

“Vive rápido, muere joven y deja un bonito cadáver”
"Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas."
"Hay una fuerza motriz más poderosa que el vapor, la electricidad y la energía atómica: la voluntad."
eleon

Desconectado Desconectado

Mensajes: 56


Ver Perfil
Re: Obtener más precisión que long double en C?¿?
« Respuesta #1 en: 3 Febrero 2012, 21:21 »

No que yo sepa, y aunque exista no será lo suficientemente grande como para almacenar "infinitos dígitos" (hasta que cierres el programa) como tú planteas. La forma más lógica de hacerlo es calcular X dígitos, por ejemplo 10, y guardarlos en un fichero, memoria dinámica u otro medio, calcular los siguientes 10 dígitos y volver a guardarlos y asi sucesivamente, sino te va a ser imposible.

Saludos.


« Última modificación: 3 Febrero 2012, 21:23 por eleon » En línea

NeoB

Desconectado Desconectado

Mensajes: 11


Ver Perfil
Re: Obtener más precisión que long double en C?¿?
« Respuesta #2 en: 4 Febrero 2012, 11:26 »

Yo también estoy buscando algo así, haber si lo consigo y lo posteo.
« Última modificación: 4 Febrero 2012, 11:28 por NeoB » En línea
Xandrete

Desconectado Desconectado

Mensajes: 195



Ver Perfil
Re: Obtener más precisión que long double en C?¿?
« Respuesta #3 en: 4 Febrero 2012, 13:48 »

Buenas, ¿alguien me dice si se puede obtener más precisión que la de long double en C? Lo pregunto por que estoy haciendo un programa que me calcule pi (sin un número de cifras definido, hasta que lo cierre) y ¡long double se queda corto para pi!  :xD

Mmmm... diría que lo que buscas es aritmética bignum, donde se utilizan arrays en los que cada posición es un dígito.

Mira, aquí en la wiki (en inglés, porque la española da penita en los artículos de informática) lo explican y dan algunos links en las referencias para seguir investigando sobre el tema. Lenguajes como Java incorporan de forma estándar bibliotecas para realizar operaciones bignum, pero en C y C++ habría que  incorporar bibliotecas de terceros (como GMP u OpenSSL) o implementar uno mismo funciones para operar con precisión arbitraria.

¡Saludos!

P.S. Por cierto, podrías inventarte una constante y calcular sus dígitos, xD (bastaría con inventarse una serie convergente  ;D), porque no creo que a estas alturas vayas a batir ningún récord calculando dígitos de Pi >.<
« Última modificación: 4 Febrero 2012, 13:51 por Xandrete » En línea
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Bitrate + Motion Search Precision
Multimedia
G3N3S1S 2 466 Último mensaje 13 Enero 2005, 23:23
por fanny
Problema long double / int
Programación C/C++
kitkat 1 460 Último mensaje 18 Junio 2008, 10:53
por Rozor
IEEE Doble precisión
Dudas Generales
dimitrix 3 1,929 Último mensaje 23 Febrero 2010, 07:25
por dimitrix
¿Cual es la forma correcta para imprimir un unsigned long long?
Programación C/C++
do-while 1 2,001 Último mensaje 1 Abril 2010, 10:09
por Komodo
Problema con la precisión del double
Java
danyelk_6u5 4 343 Último mensaje 27 Marzo 2012, 21:07
por danyelk_6u5
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines