[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;  }  
  | 
 
沒有留言:
張貼留言