每个双数是否为有理数(不包括特殊值[无穷大, - 无穷大,NaN])?我倾向于说是,基于以下逻辑:
这个逻辑是否正确,如果没有,它有什么问题,是否存在证明双值可能无理的反例?
答案 0 :(得分:3)
这个逻辑似乎是正确的。
计算机只能使用有限的空间,这意味着它们只能在内存中表示有理数(当使用double
格式时),因为无理数由无数个数字组成而不重复。
考虑到这一点,你可以存储一个函数的可执行代码来定义数字,理性与否,但这不适用于每一个非理性,更重要的是,不是{{1工作。
至于特殊价值观,我不这么认为。无穷大并不是一个真正的数字,所以我发现很难将其定义为理性或非理性。对于NaN也是如此(根据定义,不是数字)。
答案 1 :(得分:1)
你似乎是正确的,双打,至少IEEE 754与基数2是合理的。
使用IEEE 754,你有
s
m
是签名,b
是尾数,e
是基数2,s
是指数。
由于m
,b
,e
和x
是整数,{{1}}必须是合理的。