?? 改進歐拉方法求解.cpp
字號:
#include<stdio.h>
#define N 20
float f1(float,float);
void ModEuler(float(*f1)(float ,float),float x0,float y0,float xn,int n){
int i;
float yp,yc,x=x0,y=y0,h=(xn-x0)/n;
printf("x[0]%f\ty[0]=%f\n",x,y);
for(i=1;i<=n;i++){
yp=y+h*f1(x,y);
x=x0+i*h;
yc=y+h*f1(x,yp);
y=(yp+yc)/2.0;
printf("x[%d]=%f\ty[%d]=%f\n",i,x,i,y);
}
}
void main(){
float xn=5.0,x0=0.0,y0=2.0;
//void ModEuler(float(*)(float,float),float,float,float,int);
//float f1(float,float);
ModEuler(f1,x0,y0,xn,N);
}
float f1(float x,float y){
return -x*y*y;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -