?? trapzint.cpp
字號:
//Trapzint.cpp //文件二,類實現
#include "Trapzint.h" //包含類的聲明頭文件
double Trapz::operator ()(double a,double b,double eps) const
{ //積分運算過程,重載為運算符()
int done(0); //是Trapz類的虛函數成員
int n;
double h,Tn,T2n;
n=1;
h=b-a;
Tn=h*(f(a)+f(b))/2.0; //計算n=1時的積分值
while(!done)
{
double temp(0.0);
for(int k=0;k<n;k++)
{
double x=a+(k+0.5)*h;
temp+=f(x);
}
T2n=(Tn+h*temp)/2.0; //變步長梯形法計算
if(fabs(T2n-Tn)<eps) done=1; //判斷積分誤差
else //進行下一步計算
{
Tn=T2n;
n*=2;
h/=2;
}
}
return T2n;
}
//End of file Trapzint.cpp
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -