takeoff process of rookie _day4_babayaga_s的博客-爱代码爱编程
先贴图:
思路:这种计算圆周率的方法源于一种以概率统计理论为指导的一类非常重要的数值计算方法。是指使用随机数(或更常见的伪随机数)来解决很多计算问题。在正方形内随机撒点,落在圆内的点 / 落在正方形内的点(全部的点),就约等于圆的面积 / 正方形的面积 = π / 4。
大概过程是这个样子:(偷的图)
大致实现过程:
double calculatePI(double n)
{
int i = 0;
int count = 0;
double pi = 0;
double x = 0;
double y = 0;
srand((unsigned)time(NULL));
for(int i=0;i<n;i++)
{
x = rand() / (double)(RAND_MAX);
y = rand() / (double)(RAND_MAX);
if ((x * x) + (y * y) < 1)
{
count++;
}
}
pi = 4 * (count / n);
return pi;
}
结果:
这里挖了几个坑,有机会要补一下。