/*
*
* 用变步长梯形求积公式求定积分
* 1
* ∫ (x/(4+x^2))dx
* 0
*/
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <conio.h>
#include <stdlib.h>
#define epsilon 0.00001
float f(float x)
{
return(x/(4+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);
}
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);
}
计算方法之用变步长梯形求积公式求定积分
最新推荐文章于 2022-11-30 15:42:28 发布
本文详细介绍了如何使用变步长梯形求积公式来计算定积分,通过逐步调整步长并迭代计算,最终得到精确的积分结果。
部署运行你感兴趣的模型镜像
您可能感兴趣的与本文相关的镜像
Stable-Diffusion-3.5
图片生成
Stable-Diffusion
Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率
4442

被折叠的 条评论
为什么被折叠?



