改进欧拉法.cpp

来自「包含二分法、复化辛卜生公式、改进欧拉法、拉格朗日插值多项式、龙贝格算法、牛顿迭代」· C++ 代码 · 共 29 行

CPP
29
字号
#include<iostream.h>
#define N 20

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;
	cout<<"x[0]="<<x<<'\t'<<"y[0]"<<y<<endl;
	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;
		cout<<"x["<<i<<"]="<<x<<"    y["<<i<<"]="<<y<<endl;
	}
}
void main()
{

	float xn=5.0,x0=0.0,y0=2.0;
	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 + =
减小字号Ctrl + -
显示快捷键?