⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ex8_9.cpp

📁 纯粹是学习专用~
💻 CPP
字号:
#include<iostream.h>
#include<math.h>

class Simpson{
	double Intevalue,a,b;//Intevalue积分值,a积分下限,b积分上限
public:
	virtual double fun(double x)=0;//被积函数声明为纯虚函数
	Simpson(double ra=0,double rb=0){
		a=ra;
		b=rb;
		Intevalue;
	}
	void Integrate(){
		double dx;
		int i;
		dx=(b-a)/2000;
		Intevalue=fun(a)+fun(b);
		for(i=1;i<2000;i+=2)Intevalue+=4*fun(a+dx*i);
		for(i=2;i<2000;i+=2)Intevalue+=2*fun(a+dx*i);
		Intevalue*=dx/3;
	}
	void Print(){cout<<"积分值="<<Intevalue<<endl;}
};
class A:public Simpson{
public:
	A(double ra,double rb):Simpson(ra,rb){};
	double fun(double x){return sin(x);}
};
class B:public Simpson{
public:
	B(double ra,double rb):Simpson(ra,rb){};
	double fun(double x){return exp(x);}
};
void main(){
	A a1(0.0,3.1415926535/2.0);
	Simpson *s=&a1;
	s->Integrate();//动态
	B b1(0.0,1.0);
	b1.Integrate();//静态
	s->Print();
	b1.Print();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -