[C/C++ 演算法]- 蒙地卡羅法求 PI

[C/C++ 演算法]- 蒙地卡羅法求 PI

[C/C++ 演算法]- 蒙地卡羅法求 PI


剛才找資料時發現一個C/C++的教學網站,趕快發揮(C/P)的長才將它備份來,有需要的同好,歡迎來(C/P)一下^^。

拷貝來源:
http://openhome.cc/Gossip/AlgorithmGossip/
http://openhome.cc/Gossip/AlgorithmGossip/MathPI.htm

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 50001

int main(void) {
srand(time(NULL));
int sum = 0;
int i;
for(i = 1; i < N; i++) {
double x = (double) rand() / RAND_MAX;
double y = (double) rand() / RAND_MAX;
if((x * x + y * y) < 1) {
sum++;
}
}
printf("PI = %f\n", (double) 4 * sum / (N - 1));
return 0;
} 

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *