用矩形法求定积分,分别求sin x dx ,cos x dx,e exp x;

// jifen.cpp : 定义控制台应用程序的入口点。
//


#include "stdafx.h"
float integral(float(*p)(float),float a,float b,int n)
{
int i;
float x,h,s;
h=(b-a)/n;
x=a;
s=0;
for(i=0;i {
x+=h;
s+=(*p)(x)*h;
}
return (s);
}
float fsin(float s)
{
return sin(s);
}


float fcos(float s)
{
return cos(s);
}


float fexp(float s)
{
return exp(s);
}








int _tmain(int argc, _TCHAR* argv[])
{


float a1,b1,a2,b2,a3,b3,c,(*p)(float);
int n=20;
printf("input a1, b1\n");
scanf("%f,%f",&a1,&b1);


printf("input a2, b2\n");
scanf("%f,%f",&a2,&b2);

printf("input a3, b3\n");
scanf("%f,%f",&a3,&b3);


p=fsin;
c=integral(p,a1,b1,n);
printf("the integral of sin(x) is:%f\n",c);


p=fcos;
c=integral(p,a2,b2,n);
printf("the integral of cos(x) is:%f\n",c);


p=fexp;
c=integral(p,a3,b3,n);
printf("the integral of exp(x) is:%f\n",c);


system("PAUSE");
return 0;
}

你可能感兴趣的:(算法)