搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ s1与s2为什么始终相等啊求教????
标题:
s1与s2为什么始终相等啊求教????
取消只看楼主
gonewing
等 级:
新手上路
帖 子:19
专家分:9
注 册:2013-6-8
结帖率:
100%
楼主
已结贴
√
问题点数:2 回复次数:2
s1与s2为什么始终相等啊求教????
for(i=1;fabs(s1-s2)>e;i++)
{
double s=0;
for(k=i;k<2*i;k++)
s+=2*f(a+(k-i+1.0/4)*h)-f(a+(k-i+1.0/2)*h)+2*f(a+(k-i+3.0/4)*h);
s2=0.5*s1+h*s/6.0;
if(fabs(s1-s2)>e)
{
s1=s2;
h=h/2.0;
}
}
搜索更多相关主题的帖子:
double
2013-06-13 21:23
gonewing
等 级:
新手上路
帖 子:19
专家分:9
注 册:2013-6-8
第
2
楼
得分:0
回复 2楼 我叫沃恩
#include<stdio.h>
#include<math.h>
double f(double x)
{
return 1/(x*x*x);
}
void main()
{
int i,k;
double h,a,b,s1,s2=0,e=1.0e-6;
a=1;b=2;h=b-a;
s1=h*(f(a)+4*f((a+b)/2)+f(b))/6.0;
for(i=1;fabs(s1-s2)>e;i++)
{
double s=0;
for(k=i;k<2*i;k++)
s=s+2*f(a+(k-i+1.0/4)*h)-f(a+(k-i+1.0/2)*h)+2*f(a+(k-i+3.0/4)*h);
s2=0.5*s1+h*s/6.0;
if(fabs(s1-s2)>e)
{
s1=s2;
h=h/2.0;
}
}
printf("%lf %lf\n",s1,s2);
}
2013-06-14 12:56
gonewing
等 级:
新手上路
帖 子:19
专家分:9
注 册:2013-6-8
第
3
楼
得分:0
回复 9楼 YJ_Hao
这是在VC环境下运行的,应该没错吧
2013-06-15 22:09
3
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-415127-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.437378 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved