如何不使用cmath来获取double类型的两个输入的下限:
如果第一个输入为负,但是对于正整数(不确定其出问题的地方)将不起作用,这是什么原理?任何见解表示赞赏..谢谢

 int main()
{
 floors=floor(n1);
 cout<< " The floor of value 1 is " <<floors<<endl;
 floors=floor(n2);
 cout<<" The floor of value 2 is " <<floors<<endl;


long floor(long f)
{
  if( (f+ 0.5) >= (int(f)-1) )
  return int (f)-1;
  else
  return int (f);
}

最佳答案

更改为:

long floor(double f)
{
    if( f >= 0.0 ) {
        return int(f);
    } else {
        return ( int(f) - 1 );
    }
}

关于c++ - 如何不使用cmath返回数字的上限,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13037767/

10-12 19:16