龙贝格c语言程序,龙贝格算法 c语言编程
龙贝格算法#include #include #include #include float precision;float f(float x){return(sqrt(x)*log(x));}float Romberg(float a,float b){int k=1;double S,x,T1,T2,S1,S2,C1,C2,R1,R2,h=b-a;if(a==0.0)a=preci...
龙贝格算法
#include
#include
#include
#include
float precision;
float f(float x){return(sqrt(x)*log(x));}
float Romberg(float a,float b)
{int k=1;double S,x,T1,T2,S1,S2,C1,C2,R1,R2,h=b-a; if(a==0.0)
a=precision;
T1=h*(f(a)+f(b))/2;
while(1){S=0;x=a+h/2;
do
{S+=f(x);x+=h;}while(x
T2=(T1+h*S)/2.0;
if(fabs(T2-T1)
S2=T2+(T2-T1)/3.0;
if(k==1)
{T1=T2;S1=S2;h/=2;k+=1;continue;}
C2=S2+(S2-S1)/15.0;
if(k==2)
{C1=C2;T1=T2;S1=S2;h/=2.0;k+=1;continue;} R2=C2+(C2-C1)/63.0;
if(k==3)
{R1=R2;C1=C2;T1=T2;S1=S2;h/=2;k+=1;continue;}; if(fabs(S1-S2)
R1=R2;C1=C2;T1=T2;S1=S2;
h/=2;k+=1;return(R1);}}
int main(){float a,b,S,clrscr();
printf("\n Input integrate f(x)the begin:");
scanf("%f",&a);
printf("\n Input integrate f(x) the end:");
scanf("%f",&b);
printf("\n input precision:");
scanf("%f",&precision);
S=Romberg(a,b);
printf("The result is: %f",S);
getchar();
//getchar();
return(S);}
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)