int n,x,y;
long count;
double pi;
printf("请输入一个整数\n");
scanf("%d",&n);
for(x=-n,count=0;x<n;x++)
for(y=-n;y<n;y++)
if((x*x+y*y)<n*n)
count++;
pi=count/(double)n/(double)n;
printf("圆周率为%lf",pi);
#include <iostream>
using namespace std;
int main()
{
double d =0,flag = 1;
int i=1;
while(1.0/i>=1e-6)
{
d += flag /i;
flag = flag *-1;
i+=2;
}
cout<<4*d<<endl;
return 0;
}
代码如下:
记得采纳
double func_pai(int i)
{
double init = 1;
int flag = 1;
double sum = 0;
while(i--){
sum = sum + flag/init;
flag *= -1;
init += 2;
}
return 4*sum;
}
#include<stdio.h>
#include<math.h>
int main(void)
{
int n;
long N;
double i, a, pi;
scanf_s("%d", &N); 、
n = 1;
a = 0;
i = 1;
do
{
a = a - pow(-1,n)*i;
n = n + 1;
i = 1/(2 * (double)n - 1);
} while (n < N);
pi = 4 * a;
printf("圆周率的近似值为%.*f\n",n,pi); //n控制精度,实际能输出的精度有限。根据需要改写这个值
return 0;
}