| 网站首页 | 业界新闻 | 群组 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
共有 112 人关注过本帖
标题:大神帮忙看一下我这个h的值为什么一直是0
只看楼主 收藏
孤军奋战
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2018-3-11
结帖率:50%
  已结贴   问题点数:10  回复次数:3   
大神帮忙看一下我这个h的值为什么一直是0
#include <iostream>
#include <cmath>
using namespace std;
double f(int a,int b,double (*p)(double x))
{
  int i,n=1000;
  double h,s=0.0;
  h=(b-a)/n;
  for(i=1;i<=n;i++)
      s=s+h*p(a+i*h);
  return s;
}
double f1(double x)
{
 return x+1;
}
int main()
{
  cout<<f(0,1,f1)<<endl;
  return 0;
}
2018-03-22 15:44
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:236
帖 子:5487
专家分:30678
注 册:2011-1-18
  得分:10 
h=(b-a)/n;
我猜你想要的是
h=(b-a)*1.0/n;

看不懂你想干什么
2018-03-22 16:19
孤军奋战
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2018-3-11
  得分:0 
回复 2楼 rjsp
就是在(a,b)内等分n份,不能写成(b-a)/n吗?
2018-03-22 16:27
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:236
帖 子:5487
专家分:30678
注 册:2011-1-18
  得分:0 
1/1000 是 整数0
1.0/1000.0 是 浮点数0.001
2018-03-22 18:18







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.117860 second(s), 8 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved