复化梯形求积法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了复化梯形求积法相关的知识,希望对你有一定的参考价值。
#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;
}
以上是关于复化梯形求积法的主要内容,如果未能解决你的问题,请参考以下文章