📄 变步长梯形.cpp
字号:
#include <iostream.h>
#include <math.h>
double f(double x)
{
double t;
if(x==0)
t=1;
else
t=sin(x)/x;
return t;
}
void main()
{
double a,b,e,h,x,T1,T2,s;
int k;
cout<<"请输入积分区间[a,b],误差限e"<<endl;
cin>>a>>b>>e;
h=b-a;
T1=h*(f(a)+f(b))/2;
for(k=1;k<=20;k++)
{
s=0;
x=a+h/2;
for(;x<b;)
{
s+=f(x);
x+=h;
}
T2=T1/2+h*s/2;
if(fabs(T2-T1)>=e)
{
h=h/2;
T1=T2;
}
else
break;
}
cout<<T2<<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -