Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: engel lex en 5 Abril 2014, 04:00 am



Título: duda matematica de precision arbitraria
Publicado por: engel lex en 5 Abril 2014, 04:00 am
Buenas!

bueno, voy al punto... cual es la más simple forma de trabajar matemática de alta precisión en c++ (minGW)?

si alguien tiene experiencia en esto, que librerías son más útiles? que me sirve?

-----------------------------------------------------------------------------------------
Actualización, resolví con GMP (https://gmplib.org/)

se puede enredar un poco la instalación, así que a quien interese (minGW):

descargar y descomprimir (si el formato .lz no lo soportan, en "download" a la derecha tienen un par de formatos más)

-abrir el batch de msys
-descomprimir donde deseen (dentro del "home" de msys prefesiblemente por comodidad)
Código:
cd gmp-x.x.x
donde x.x.x = su version

Código:
./configure --prefix=${gmp_install}
(esto instalará TODO, si quieren instalar solo lo de c y c++ busquen en internet)

Código:
make
make install

listo, instalado... (un modo "sucio" de usarlo)

ahora para linkear, en el linker agregan la capeta ".libs" de donde se creó el sistema y linkean
-lgmp

agregan la capeta completa de "gmp-x.x.x" a sus includes en su compilador y listo el pollo

para comprobar si fue bien, ellos proponen este ejemplo

Código
  1. #include <math.h>
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. #include <iostream>
  5. #include <gmp.h>
  6. #include <gmpxx.h>
  7.  
  8. using namespace std;
  9.  
  10. int main ()
  11. {
  12.    mpz_t p;
  13. mpz_init_set_ui (p,200);
  14.  
  15. return 0;
  16. }
  17.  

si compila está ok