实验环境
- Windows10
- Ubuntu 18.04
- VisualCode
实验记录
第一步:单次计算 π \pi π值
算法如下:
#include<stdio.h>
#include<sys/types.h>
#include<unistd.h>
#include<stdlib.h>
#include<time.h>
int intervals=1000; //控制随机点的个数
int main()
{
clock_t start,delta; //用于统计程序运行时间
start=clock();
unsigned seed=time(NULL);
int circle_points=0;
int i;
double pi;
for(i=0;i<intervals*intervals;i++)
{
double rand_x=(double)rand_r(&seed)/RAND_MAX;
double rand_y=(double)rand_r(&seed)/RAND_MAX;
if((rand_x*rand_x+rand_y*rand_y)<=1)
{
circle_points++;
}
}
pi=(4.0*circle_points)/i;
printf("Cirlce points:%d, total_points:%d, the estimated PI is %lf\n",circle_points, i, pi);
delta=clock