蒙特卡洛法求Pi

编程实现如下模拟:

飞镖被随机地投掷到以(1,1)和(-1,-1)为对角的正方形内。若飞镖落在单位圆内【即以(0,0)为圆心,1为半径的圆】,算命中。否则未命中。

运行这个模拟并用它求PI的近似值。

 

模型如下图所示:

蒙特卡洛法求Pi_第1张图片

 

// Circle_PI.cpp : 定义控制台应用程序的入口点。
//

#include 
#include 
#include 
#include 

using namespace std;

const int MAX_DAST=100000;		//投掷总数

double rand_double(double a,double b);

void rand_seed();				//设置随机数的种子

int main(void)
{

	int PI_DAST=0;	//投掷在圆里面的总数

	rand_seed();

	for(int i=0;i(time(0));				//返回的是系统的时间
	srand(seed);
	/*
	rand()产生伪随机数。srand函数提供种子,种子不同产生的随机数序列也不同,所以通常先调用srand函数,将time(0)的结果设置成种子。
	srand函数是随机数发生器的初始化函数。
	*/
}

http://blog.csdn.net/smsmn/article/details/6338925

你可能感兴趣的:(DSP数字信号处理)