c语言编程,常微分方程初值问题的taylor求解方法的完整编程,急急急,从头到尾,分两次发也没问题
c语言编程,常微分方程初值问题的taylor求解方法的完整编程,急急急,从头到尾,分两次发也没问题完整的编程,从开始到结束,好好分行。。。。...
c语言编程,常微分方程初值问题的taylor求解方法的完整编程,急急急,从头到尾,分两次发也没问题完整的编程,从开始到结束,好好分行。。。。
展开
2016-06-07
展开全部
#include//y'=x+ydoublef1(doublex,doubley){returnx+y;}//y'=3y/(1+x)doublef2(doublex,doubley){return3*y/(1+x);}//y'=y*y;doubleftest(doublex,doubley){returny*y;}voidsolve(double(*func)(doublex,doubley),doubleminX,doublemaxX,doubley0,doubleh,doubleresult[][7],int*resultNum){doubleK1,K2,K3,K4;doubleXn_1,Yn_1;intn=0;result[n][0]=n;result[n][1]=minX;result[n][2]=0;result[n][3]=0;result[n][4]=0;result[n][5]=0;result[n][6]=y0;for(n=1;n*h<=maxX;n++){Xn_1=result[n-1][1];Yn_1=result[n-1][6];K1=(*func)(Xn_1,Yn_1);K2=(*func)(Xn_1+h/2,Yn_1+h/2*K1);K3=(*func)(Xn_1+h/2,Yn_1+h/2*K2);K4=(*func)(Xn_1+h,Yn_1+h*K3);result[n][0]=n;result[n][1]=minX+n*h;result[n][2]=K1;result[n][3]=K2;result[n][4]=K3;result[n][5]=K4;result[n][6]=Yn_1+h*(K1+2*K2+2*K3+K4)/6;}*resultNum=n;}voidprint(doubleresult[][7],intresultNum){inti;doublex;printf("%5s%15s%15s%15s%15s%15s%15s\n","n","Xn","K1","K2","K3","k4","Y");for(i=0;i<95;i++)printf("-");printf("\n");for(i=0;i
追问
程序不完整。。。。。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询