#include #include #define NSTEPS 200000 int main() { double pi, sum, step, x; long int i; sum = 0; step = 1.0 / (double)NSTEPS; #pragma omp parallel #pragma omp for private(i,x) reduction(+:sum) for (i=1; i<=NSTEPS; i++) { x = step * ((double)i-0.5); sum += 4.0/(1.0+x*x); } pi = sum * step; printf("Pi is %4.12f\n", pi); return 0; }