C++中关于algorithm这个头文件的问题
#include<iostream>#include<algorithm>usingnamespacestd;boolapprox_equal(doublex,doubl...
#include <iostream>
#include <algorithm>
using namespace std;
bool approx_equal(double x,double y)
{
const double EPSILON = 1e-14;
if (x == 0)
return fabs(y) <= EPSILON;
if (y == 0)
return fabs(x) <= EPSILON;
return fabs(x-y) / max(fabs(x), fabs(y)) <= EPSILON;
}
int main()
{
double x;
cout << "Enter a number: ";
cin >> x;
double y;
cout << "Enter another number: ";
cin >> y;
if (approx_equal(x,y))
cout << "The numbers are approximate equal.\n";
else
cout << "The numbers are different.\n";
return 0;
}
为什么出错了呀?我电脑里面有algorithm,但是没有后缀名,改怎么使用? 展开
#include <algorithm>
using namespace std;
bool approx_equal(double x,double y)
{
const double EPSILON = 1e-14;
if (x == 0)
return fabs(y) <= EPSILON;
if (y == 0)
return fabs(x) <= EPSILON;
return fabs(x-y) / max(fabs(x), fabs(y)) <= EPSILON;
}
int main()
{
double x;
cout << "Enter a number: ";
cin >> x;
double y;
cout << "Enter another number: ";
cin >> y;
if (approx_equal(x,y))
cout << "The numbers are approximate equal.\n";
else
cout << "The numbers are different.\n";
return 0;
}
为什么出错了呀?我电脑里面有algorithm,但是没有后缀名,改怎么使用? 展开
展开全部
要:
#include <math.h>
fabs 在 math.h 里。
max(..,..) 函数 可以用 _MAX 代替 max:
_MAX(fabs(x), fabs(y))
可以不要 <algorithm> [ 没有后缀名 是正确的]
#include <math.h>
fabs 在 math.h 里。
max(..,..) 函数 可以用 _MAX 代替 max:
_MAX(fabs(x), fabs(y))
可以不要 <algorithm> [ 没有后缀名 是正确的]
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
algorithm是标准模板库里面的组件,不带.h的,注意到你的程序使用了fabs函数,应该包含cmath或者math.h呀,这里面还有其他的函数可以用,sin,cos sinh。。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <iostream>
#include<math.h>
#include <algorithm>
using namespace std;
double max(double x, double y)
{
if(x>y) return x;
else return y;
}
bool approx_equal(double x,double y)
{
const double EPSILON = 1e-14;
if (x == 0)
return fabs(y) <= EPSILON;
if (y == 0)
return fabs(x) <= EPSILON;
return fabs(x-y) / max(fabs(x), fabs(y)) <= EPSILON;
}
int main()
{
double x;
cout << "Enter a number: ";
cin >> x;
double y;
cout << "Enter another number: ";
cin >> y;
if (approx_equal(x,y))
cout << "The numbers are approximate equal.\n";
else
cout << "The numbers are different.\n";
return 0;
}
#include<math.h>
#include <algorithm>
using namespace std;
double max(double x, double y)
{
if(x>y) return x;
else return y;
}
bool approx_equal(double x,double y)
{
const double EPSILON = 1e-14;
if (x == 0)
return fabs(y) <= EPSILON;
if (y == 0)
return fabs(x) <= EPSILON;
return fabs(x-y) / max(fabs(x), fabs(y)) <= EPSILON;
}
int main()
{
double x;
cout << "Enter a number: ";
cin >> x;
double y;
cout << "Enter another number: ";
cin >> y;
if (approx_equal(x,y))
cout << "The numbers are approximate equal.\n";
else
cout << "The numbers are different.\n";
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你确定algorithm有fabs这个函数 这个实在math里吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询