📄 integral.cpp
字号:
#include<stdio.h>
#include<math.h>
main()
{
void integral(double,double,double(*function)(double));
double a,b;
printf("请输入上限与下限:");
scanf("%lf %lf",&a,&b);
integral(a,b,sin);
integral(a,b,cos);
integral(a,b,exp);
return 0;
}
void integral(double a,double b,double(*function)(double))
{
int n=1000000;
double each_length=(a-b)/n;
double result=0;
//矩形法
// for(int i=0;i<n;i++)
// {
// result+=(*function)(b+each_length*i);
// }
// result*=each_length;
//辛扑生抛物线法
double temp_result;
for(int i=0;i<=n;i++)
{
temp_result=(*function)(b+each_length*i);
if(i==0||i==n)
{
result+=temp_result;
continue;
}
if(i%2==0)result+=2*temp_result;
else result+=4*temp_result;
}
result*=each_length/3;
printf("%17.14lf\n",result);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -