Question

I am actually very new to C, but for a project, I'd like to be able to calculate the value of Pi from 1 million to at least 32 million decimal places. Basically, like what SuperPi/HyperPi does for benchmarking a CPU.

But obviously, the standard C library is incapable of this.

What library can I use, and what algorithm do I use for this task?

And precision too, anyone can cook up a rand() bloat and call it the "Ultimate value of Pi".

My compiler is GCC, so if possible, I'd like the library to be able to compile on it(I have the BigNum library).

Was it helpful?

Solution

I'v used the quadratic algorithm from there with success. I'd suggest MPFR for the library part.

OTHER TIPS

As for the algorithm, see http://en.wikipedia.org/wiki/Chudnovsky_algorithm. For a library to deal with bignums, check http://en.wikipedia.org/wiki/Arbitrary-precision_arithmetic#Libraries. Have fun.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top