相关疑难解决方法(0)

IEEE 754实数可以覆盖其范围内的所有整数吗?

原始问题被编辑(缩短)以关注精度问题,而不是范围问题.

单精度或双精度,实数的每个表示都限于( - 范围,+范围).在这个范围内有一些整数(1,2,3,4 ......等等;负数也是如此).

是否保证IEEE 754实数(浮点数,双数等)可以"覆盖" 其范围内的所有整数?"覆盖"是指实数代表的是整数,而不是(例如)"5.000001".

正如提醒:http: //www3.ntu.edu.sg/home/ehchua/programming/java/DataRepresentation.html各种数字表示格式的很好的解释.

更新:

因为问题是"可以",我也在寻找无法做到的事实 - 因为它引用一个数字就足够了.例如"不能不能完成,例如编号1748574没有完全由浮点数表示"(当然这个数字是凭空而来的).

对于好奇的读者

如果您想使用IEEE 754表示 - 在线计算器:http://www.ajdesigner.com/fl_ieee_754_word/ieee_32_bit_word.php

math

17
推荐指数
3
解决办法
5620
查看次数

测试给定的数字是否为整数

我正在尝试实现用户定义的函数,该函数测试数字是否为整数:

#include <iostream>
#include <typeinfo>
using namespace std;
bool   integer(float k){
                  if (k==20000) return false;;
                  if (k==(-20000)) return  false;
 if (k==0)  return true;
   if (k<0)  return integer(k+1);
   else if(k>0)  return integer (k-1);
   return false;
}
int main(){

    float s=23.34;
       float s1=45;
       cout<<boolalpha;
       cout<<integer(s)<<endl;
       cout<<integer(s1)<<endl;
       return 0;

}
Run Code Online (Sandbox Code Playgroud)

所以我的想法是,如果一个数是一个整数,如果它是负数或正数无关紧要,如果我们减少或增加它,我们必须得到零,但问题是,我们怎样才能创建增减的下界?

c++ numbers

5
推荐指数
3
解决办法
4万
查看次数

标签 统计

c++ ×1

math ×1

numbers ×1