C++ GMP

Da Andreabont's Wiki.

La libreria GMP permette di trattare numeri di dimensione qualsiasi e con la precisione voluta. Ovviamente i calcoli eseguiti attraverso questa modalità sono più lenti rispetto ai calcoli diretti della CPU, ma si rendono necessari ogni volta che la CPU non è in grado di gestire numeri troppo grandi o non fornisce la precisione desiderata. I tipi sono compatibili con le funzioni matematiche della libreria standard.

Codice

Tipi disponibili

mpz_class a1 = 10;           // Inizializzazione di un intero standard
mpz_class a2 = 10_mpz        // Inizializzazione di un intero più grande del massimo rappresentabile
mpq_class b = 0.5;           // Inizializzazione di un razionale
mpf_class c1 = 0.5;          // Inizializzazione di un float standard
mpf_class c2 = 1.23e-10_mpf; // Inizializzazione di un float secondo notazione scientifica

Compilare

g++ -std=c++11 main.cpp -lgmpxx -lgmp