当前位置:首页 » 编程语言 » 计算圆周率的c语言程序

计算圆周率的c语言程序

发布时间: 2022-08-08 21:46:23

Ⅰ 用c语言编写一个求圆周率的程序

#include<stdio.h>
main()
{ float s,r,PI;
clrscr();
printf("input周长 s");
scanf("%f",&s);
printf("input半径 r");
scanf("%f",&r);
PI=s/(2*r);
pringf("周长=%f,半径=%f\n圆周率PI=%f",s,r,PI);

}

Ⅱ 求一个用c语言算圆周率的程序

#include <stdio.h>

long a=10000,b,c=2800,d,e,f[2801],g;
void main()
{
for(;b-c;) f[b++]=a/5;
for(;d=0,g=c*2;c-=14,printf("%04d",e+d/a),e=d%a)
for(b=c;d+=f[b]*a,f[b]=d%--g,d/=g--,--b;d*=b);
}
这个问题我问过。
能算800位,我给的网址是我问的,回答里有解释,和能算1000位的优化算法,很好的。

Ⅲ 怎么用C语言编程计算出π的值

一个足以让你吐血的计算400位pi的C程序:
int a=10000, b, c=2800, d, e, f[2801], g;
main() {
for(; b-c; f[b++]=a/5);
for(; d=0,g=c*2; c -=14,printf("%.4d",e+d/a),e=d%a)
for(b=c; d+=f[b]*a,f[b]=d%--g,d/=g--,--b; d*=b);
}
理论上只要用大数算法扩了就能一直算下去。我在Palm上面实现的那个就是基于这个算法,没有扩,算到4680位(受到Palm平台32k数组的长度限制)。
这个程序的特点是:你抱着想看看算pi原理的希望来读这个程序,结果发现就是看了也还是看不懂~~

转的,但是网络知道不允许贴地址哦

第二种:
用C语言编程π*π/6=1/1*1+1/2*2+1/3*3+。。。+1/n*n
#include<stdio.h>
#include<math.h>
main()
{
int n,i;
double s=0;
printf("输入n:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{s=s+1.0/(i*i);
}
printf("pai=%f",sqrt(s*6));
}

第三种:
求pi=(1+1/(1*3))*(1+1/(3*5))*(1+1/(5*7))…………直到最后一项的分数小于10的负6次方为止。

#include<stdio.h>
#include<math.h>
#include<stdlib.h>
void main()
{
double pi,i,j,sigh,term;
i=1,j=3,sigh=1,term=1;
while(sigh>1e-6)
{
sigh=1/(i*j);
term=(1+sigh)*term;
i=i+2;
j=j+2;
}
pi=term;
printf("pi=%f\n",pi);
}

Ⅳ 用c语言计算圆周率

#include<math.h>
main()
{
float pi=0,t=1;
int i=1;
do
{
t=1/(float)(2*i-1);
if(i%2==0) t=-t; /*printf("%d ",t);*/
pi+=t;
i++;
}while(fabs(t)>0.00001);
printf("pi=%f\n",4*pi);
getch();
}

Ⅳ 用C语言编一个计算圆周率的程序,用户输入指定位数,并计算到指定位数(精度不够可以用整数)

#include "stdio.h"

#include <stdlib.h>

#include <string.h>

int main(int argc,char *argv[]){

int a,b,c,d,e,f[2801],g,i,n;

char pi[801]="",t[5]="";

for(a=10000,b=0,c=2800;b-c;f[b++]=2000);//a/5

for(i=e=0;d=0,g=c*2;c-=14,e=d%a){

for(b=c;d+=f[b]*a,f[b]=d%--g,d/=g--,--b;d*=b);

n=e+d/a,t[0]=t[1]=t[2]=t[3]='';

n<10 ? t[0]=t[1]=t[2]='0',i=3 : n<100 ? t[0]=t[1]='0',i=2 : n<1000 ? t[0]='0',i=1 : i=0;

itoa(n,t+i,10);

strcat(pi,t);

}

printf("Please enter the length n(int 0<n<800)... n=");

if(scanf("%d",&n)!=1 || n<1 || n>800){

printf("Input error, exit... ");

return 0;

}

for(i=0;i<n;printf("%c",pi[i++]));

printf(" ");

return 0;

}

代码格式和运行样例图片:

Ⅵ 用C语言写出计算圆周率的程序

double s = 0;//面积
double pi = 0;//圆周率
double d=200;//直径(值越大圆周率越精确)
double r = d/2;//半径
for(int i=1;i<=d;i++){
for(int j=1;j<=d;j++){
if((i-r)*(i-r)+(j-r)*(j-r)<=r*r){
s++;
}
}
}
pi = s/(r*r);

Ⅶ C语言求圆周率

#include<stdio.h>

intmain()
{
floatf;
doublepi,i,sign;
while(scanf("%f",&f)==1)
{
pi=0;
i=1;
sign=1;
do
{
pi+=sign*1.0/i;
}while(1.0/i>=f&&(sign=-sign)&&(i+=2));
printf("%lf ",pi*4.0);
}
return0;
}

Ⅷ C语言计算圆周率

#include<stdio.h>
#include<math.h>
intmain(){
doublep=0,q=0;
inti;
for(i=1;;i++){
p+=6*1.0/(i*i);
q+=4*1.0*pow(-1,i+1)/(2*i-1);//q后面少一个+
if(fabs(sqrt(p)-q)<1e-6)
break;
}
printf("PIis%lf,项数为%d",q,i);
return0;
}

Ⅸ 用C程序求圆周率

思想:
在0到1之间取两个随机数,如果这两个随机数(x,y)在四分之一圆内,就加一。
最后用落在圆内的点数,除以总点数,就是PI了。

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>

#define N 300000

main()
{
long i,n=0;
float x,y,pi;

srand(time(NULL));
for (i=0;i<N;i++)
{
x=1.0*rand()/RAND_MAX;
y=1.0*rand()/RAND_MAX;
if (x*x+y*y<1)
n++;
}
pi=4.0*n/N;
printf("pi=%f\n",pi);
getch();
}

热点内容
编译androidwebkit 发布:2024-05-04 13:11:37 浏览:760
安卓微信流量怎么控制 发布:2024-05-04 12:47:19 浏览:798
mysql主从复制数据库 发布:2024-05-04 12:37:55 浏览:511
开公司人员配置不够有什么影响 发布:2024-05-04 12:32:21 浏览:434
rust网络编程和ftp 发布:2024-05-04 12:32:21 浏览:62
微信怎么知道账号密码 发布:2024-05-04 12:20:06 浏览:978
我的世界服务器如何用自己的存档 发布:2024-05-04 12:06:36 浏览:338
七日杀服务器ip怎么设置 发布:2024-05-04 11:57:57 浏览:431
启用java 发布:2024-05-04 11:51:46 浏览:970
mac下开发php 发布:2024-05-04 11:28:53 浏览:628