永发信息网

用c语言如何编写“用梯形法求定积分∫sinxdx的近似值 上限为不b=π下限为a=0”这一问题,求代码

答案:1  悬赏:70  手机版
解决时间 2021-11-26 03:09
用c语言如何编写“用梯形法求定积分∫sinxdx的近似值 上限为不b=π下限为a=0”这一问题,求代码
最佳答案
首先解决怎么算,计算机肯定不会积分,所以我开始想用sinx的泰勒展开式,然后选3-4次作为近似,然后积分。听你说梯形法,是数值计算的内容,刚好这学期在学,就把我调试的程序发一个给你吧这是romberg算法,把a 换为0,b换为pi就好了吧。附上书上的代码。


#include

#include
#define f(x) (sin(x))
#define N_H  20
#define MAXREPT 10
#define a  1.0
#define b  2.0
#define epsilon 0.00001
double computeT(double aa,double bb,long int n)
{
   int i;double sum=0.0;double h=(bb-aa)/n;
   for(i=1;i   {
      sum+=f(aa+i*h);
   }
   sum+=(f(aa)+f(bb))/2;
   return (h*sum);
}
void main()
{
   int i;
   long int n=N_H,m=0;
   double T[MAXREPT+1][2];
   T[0][1]=computeT(a,b,n);
   n*=2;
   for (m=1;m   {
      for (i=0;i      {
T[i][0]=T[i][1];
      }
      T[0][1]=computeT(a,b,n);
      n*=2;




      for (i=1;i<=m;i++)
      {
 T[i][1]=T[i-1][1]+(T[i-1][1]-T[i-1][0])/(pow(2,2*m)-1);
 if((T[m-1][1]T[m][1]-epsilon))
 {

    printf("the integrate is %lf
",T[m][1]);

    return;
 }
      }
   }

   printf("return no solved...
");

}
追问有没有简单点的 我是大一的初学者,做个简单的作业而已,这些东西还没学过,交上去有点不适合吧追答那这样吧,如果只求这个sinx的积分,你可以这样,根据积分的定义就是做适当的分割,每个小区间内,用曲面的内接梯形来近似整个曲面的面积(也就是精确积分)。
基于这个你把0到π均分为30份,设置一个long float变量f,每个小区间做一次循环,循环一次,将这个小区间的梯形面积加到f里去,循环30次,最后的f就是近似值。不过我觉得这样算没什么意义。我稍微写几行试试。
int i=0;
float a=0;
long float f;
for(i=0;i<30;i++)
{
      f=f+sin(a+pi/60)*(pi/30);
      a=a+pi/30;
}
a+=PI/30;
}
printf("the answer is%lf",f);
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
审计部门可以对职工集资建房工程进行决算审计
老来难买千金瘦,看看贴友们都有什么好的自然
小学一年级数学题,有一袋糖,比30块多,比40
如何调整燕尾槽间隙
姓侯的祖先是谁,出现过什么名人,
卫国蟹店地址在什么地方,我要处理点事!
大家看看这是什么石头,表面像玻璃,
一汽威志改装水温表怎样安转
请教湾仔到尖沙咀的路线
瑞士入境可以带卤菜吗
如图,一次数学测试后,老师将全班学生的成绩
平时遇事当时想说又不知道该怎么说,等事后又
怎样区分茶花的叶芽和花芽
当成绩下降时,如何挽回呢?
腿磕青了,有什么好办法?
推荐资讯
小县城开个孕婴店需要多少钱
如果你博士毕业,期望月薪是多少
钱江开发区废品回收站地址好找么,我有些事要
世纪经典地址好找么,我有些事要过去,
人,不是活的怎么样,而是怎么去活
尼龙袋在燃烧过程中产生什么气体我是从事尼龙
金杯4.2米厢式货车出厂价是多少?
求个藏头对联!100分悬赏!!!!!!!
囔怎么组词??????????
“语言”和“言语”具有怎样的区别
招远租房到哪个网站
兰亭集序知识点总结
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?