- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
复化梯形公式
复化梯形公式
#includeiostream.h
#includemath.h
double function1(double x)//被积函数
{
double s;
s=x/(4+x*x);
return s;
}
double function2(double x)//被积函数
{
double s;
s=sqrt(x);
return s;
}
double ReiterationOfTrapezoidal(double a,double b,double n,double f(double x))//复化梯形公式
{
double h,fa,fb,xk,t;
h=(b-a)/n;//步长
fa=f(a);
fb=f(b);
double s=0.0;
for(int k=1;kn;k++)
{
xk=a+k*h;
s=s+f(xk);
}
t=h*(fa+fb)/2+h*s;//复化梯形公式
return t;
}
double ReiterationOfSimpson(double a,double b,double n,double f(double x))//复化Simpson公式
{
double h,fa,fb,xk,xj;
h=(b-a)/n;
fa=f(a);
fb=f(b);
double s1=0.0;
double s2=0.0;
for(int k=1;kn;k++)
{
xk=a+k*h;
s1=s1+f(xk);
}
for(int j=0;jn;j++)
{
xj=a+(j+0.5)*h;
s2=s2+f(xj);
}
double sn;//和
sn=h/6*(fa+fb+2*s1+4*s2);//复化Simpson公式
return sn;
}
main()
{
double a,b,Result,n;
/*第一小题*/
cout请输入第一小题积分下限:endl;
cina;
cout请输入第一小题积分上限:endl;
cinb;
cout请输入第一小题分割区间数n:endl;
cinn;
cout第一小题复化梯形公式计算结果:;
Result=ReiterationOfTrapezoidal(a, b, n,function1);
coutResultendl;
cout第一小题复化Simpson公式计算结果:;
Result=ReiterationOfSimpson(a, b, n,function1);
coutResultendl;
/*第二小题*/
cout请输入第二小题积分下限:endl;
cina;
cout请输入第二小题积分上限:endl;
cinb;
cout请输入第二小题分割区间数n:endl;
cinn;
cout第二小题复化梯形公式计算结果:;
Result=ReiterationOfTrapezoidal(a, b, n,function2);
coutResultendl;
cout第二小题复化Simpson公式计算结果:;
Result=ReiterationOfSimpson(a, b, n,function2);
coutResultendl;
return 0;
}
本文来自CSDN博客,转载请标明出处:/liuhongyi666/archive/2008/12/22/3584482.aspx
#include conio.h /* 此头函数请不要删除 */
#include stdio.h
float N,A,B,X;
float F(float x);
float Ti() //复化梯形公式
{
float i,n,h,t,g=0;
n=N;
h=(B-A)/n;
for(i=1;in;i++)
{X=A+i*h;
g=F(X)+g;
}
t=h*(F(A)+2*g+F(B))/2;
return(t);
}
float Si() //复化辛普生公式
{float i,n,h,t,p=0,g=0;
n
原创力文档


文档评论(0)