使用梯形法计算定积分函数sin(x)在区间在指定区间上的定积分。计算时积分区间等分数为 1000。
程序运行结果如下:
输入:
0 1
输出:
0.459698
分析:我……数学不好……所以我们还是直接看程序吧……程序里面对变量进行强行解释
#include<iostream>
#include<math.h>
using namespace std;
int main()
{
double a,b,h,sum;
int n,i;
cin>>a>>b;
n=1000; //定义n用来分割区间为1000份
h=(b-a)/n; //把(a,b)区间分为1000份,每一份为h
sum=(sin(a)+sin(b))/2; //区间上函数值
for (i=1;i<n;i++)
sum=sum+(sin(a+i*h)); //求和,把1000个小矩形的值加起来
sum=sum*h;
cout<<sum;
return 0;
}
注意一下不要忘记math库的头文件啊