?? 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 + -