用以下无穷级数计算圆周率:PI=4-4/3/5-4/7+4/9- 编程序计算:要计算多少项才能得到3.14、3.1415、3.14159
2011-04-01
展开全部
圆周率:
PI=4-4/3+4/5-4/7+4/9-……。
编程序计算:要计算多少项才能得到3.14 3.1415 3.14159;*/
#include <iostream>
#include <iomanip>
#include <cmath>
int fun(double t,double r,int d);
using namespace std;
int main()
{
fun(3.14,0.005,3); 通过调用函数,减少代码
fun(3.1415,0.00005,5);
fun(3.14159,0.000005,6);
return 0;
}
int fun(double t,double r,int d)
{ double PI(4);
int a(1); //a分别用于统计三个结果
for(int m=1;((PI-t)<=(-1)*r||(PI-t)>=r)||m==1;a++,m++)
{PI=PI+pow(-1,m)*4.0/(2*m+1);
}
cout<<"计算"<<a<<"项才能得到"<<setprecision(d)<<PI<<endl; //检验是否到了指定精度
return 0;
}
有问题吗?
另外,团IDC网上有许多产品团购,便宜有口碑
PI=4-4/3+4/5-4/7+4/9-……。
编程序计算:要计算多少项才能得到3.14 3.1415 3.14159;*/
#include <iostream>
#include <iomanip>
#include <cmath>
int fun(double t,double r,int d);
using namespace std;
int main()
{
fun(3.14,0.005,3); 通过调用函数,减少代码
fun(3.1415,0.00005,5);
fun(3.14159,0.000005,6);
return 0;
}
int fun(double t,double r,int d)
{ double PI(4);
int a(1); //a分别用于统计三个结果
for(int m=1;((PI-t)<=(-1)*r||(PI-t)>=r)||m==1;a++,m++)
{PI=PI+pow(-1,m)*4.0/(2*m+1);
}
cout<<"计算"<<a<<"项才能得到"<<setprecision(d)<<PI<<endl; //检验是否到了指定精度
return 0;
}
有问题吗?
另外,团IDC网上有许多产品团购,便宜有口碑
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
#include <math.h>
void main()
{
double p,s;
int c,k,iw=3,ip=2,i,ep;
for(k=1,ep=100;k<=4;k++,ep*=10.0)
{
p=3.141592;
c=0,s=0.0;
for(i=1;(int)(s*ep)-(int)(p*ep);i++,c++)
{
s=s+4./(2*i-1.);
s*=-1;
}
printf("\np=%f,s=%*.*f,c=%d,i=%d\n",p,iw++,ip++,s,c);
}
printf("\n");
}
#include <math.h>
void main()
{
double p,s;
int c,k,iw=3,ip=2,i,ep;
for(k=1,ep=100;k<=4;k++,ep*=10.0)
{
p=3.141592;
c=0,s=0.0;
for(i=1;(int)(s*ep)-(int)(p*ep);i++,c++)
{
s=s+4./(2*i-1.);
s*=-1;
}
printf("\np=%f,s=%*.*f,c=%d,i=%d\n",p,iw++,ip++,s,c);
}
printf("\n");
}
更多追问追答
追问
你这个答案明显抄袭的...
追答
我晕,好的东西 不就是让拿来用的么
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
matlab编程或者C++编程都可以
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询