📄 pi.cpp
字号:
#include<math.h>
#include<stdio.h>
#include<stdlib.h>
main()
{
float s;
int b,x,n,c,i,j,d,l,a[5000];
printf("*************** WELCOME **************\n\n");
printf("This programme is for calculating pi.\n\n");
printf("请输入想要达到的精确位数\n");
scanf("%d",&x);
for(s=0,n=1;n<=5000;n++)
{
s=s+log((2*n+1)/n);
if(s/log(10)>x)
break;
}
//initialize the array for Pi
for(i=0;i<=x+1;i++)
a[i]=0;
//caculate the value of Pi
for(c=1,j=n;j>=1;j--)
{
d=2*j+1;
for(i=0;i<=x;i++)
{
a[i]=c/d;
c=(c%d)*10+a[i+1];
}
a[x+1]=c/d;
for(b=0,i=x+1;i>=0;i--)
{
a[i]=a[i]*j+b;
b=a[i]/10;
a[i]=a[i]%10;
}
a[0]=a[0]+1;
c=a[0];
}
for(b=0,i=x+1;i>=0;i--)
{
a[i]=a[i]*2+b;
b=a[i]/10;
a[i]=a[i]%10;
}
//print the value of Pi
printf("pi=\n%d.",a[0]);
for(l=10,i=1;i<=x;i++)
{
printf("%d",a[i]);
l++;
if(l%10==0)
printf(" ");
if(l%50==0)
printf("\n");
}
printf("\n");
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -