[C言語]円周率

円周率の計算方法

### マチンの公式
π/4 = 4Arctan*1/5 – Arctan*1/239
これをコーディングすると

#include <stdio.h>
#include <math.h>

int main(void){

	double pi;

	pi = (4 * atan(1/5) - atan(1/239)) / 4;

	printf("%lf\n", pi);


	return 0;
}

$ ./main
0.000000
あれ?? 何故?

### 22/7、355/113、428224593349304/136308121570117

#include <stdio.h>
#include <math.h>

int main(void){

	double pi1, pi2, pi3;
	pi1 = 22.0/7.0;
	pi2 = 355.0/113.0;
	pi3 = 428224593349304.0/136308121570117.0;

	printf("%lf\n", pi1);
	printf("%lf\n", pi2);
	printf("%lf\n", pi3);


	return 0;
}

$ ./main
3.142857
3.141593
3.141593

22/7で計算すると、int型で3.000000になってしまう

### モンテカルロ法

#include 
#include 
#include 

int main(void){

	int j, jmax = 100000000;
	int Ni;
	double x,y,max,pi;

	max = (double)RAND_MAX;
	srand(time(NULL));

	for(j=0, Ni=0; j

$ ./main
3.141687

円周率、侮ってた、奥が深い