#include <stdio.h>
#include <omp.h>
int num_iter = 1000000;

int main(int argc, char* argv[])  { 
	double delta_x = 1.0 / num_iter;	
	double sum  = 0.0;
	double x, f_x;
	int i;
#pragma omp parallel for private(x, f_x) \
				shared(delta_x) reduction(+: sum)
  	for (i = 1; i <= num_iter; i++) {
  		x = delta_x * (i-0.5);
		f_x = 4.0 / (1.0 + x*x);
		sum  += f_x;
	}
        printf("Computed value pi = %lf\n", delta_x * sum);
}

