📄 simpson.c
字号:
#include <stdio.h>
#include <conio.h>
#include <math.h>
#define PI 3.1415926
double f(double x)
{ double y=0.3;
return sqrt(1-y*y*cos(x)*cos(x)) ;
}
void main()
{
int i,n=1;
double s;
double f(double);
double Simpson(double(*)(double),double,double,int);
for(i=0;i<=16;i++)
{
s=Simpson(f,0,2*PI,n);
printf("s(%d)=%0.9lf\n",n,s);
n*=2;
}
getch();
}
double Simpson(double(*f)(double),double a,double b,int n)
{
int k;
double s,s1,s2=0.0;
double h=(b-a)/n;
s1=f(a+h/2);
for(k=1;k<=n-1;k++)
{
s1+=f(a+k*h+h/2);
s2+=f(a+k*h);
}
s=h/6*(f(a)+4*s1+2*s2+f(b));
return s;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -