标签:
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<conio.h>
#include<stdlib.h>
#define epsilon 0.00001
float f(float x){
return (1.0/(1.0+x*x));
}
float computeT(float a,float b){
float T=0,h=(b-a)/2;
T=h*(f(a)+2*T+f(b))/2;
return T;
}
int main(){
int i;
float a,b,T1,T2,S,x,h;
printf("\n Input the begin:");
scanf("%f",&a);
printf("\n Input the end:");
scanf("%f",&b);
h=b-a;
T1=computeT(a,b);
while(1){
S=0;
x=a+h/2;
do
{
S+=f(x);
x+=h;
}while(x<b);
T2=(T1+h*S)/2;
if(fabs(T2-T1)>=epsilon){
T1=T2;
h=h/2;
continue;
}
else
break;
}
printf("solve is:%f",T2);
getch();
return S;
}
标签:
原文地址:http://www.cnblogs.com/hbuser/p/5508970.html