佚名通过本文主要向大家介绍了计算分数的浮点数值,计算分数的浮点数值c,python浮点数,js浮点数是什么,浮点数等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题:如何将浮点数表示的无理数与分数转化为自然显示?
描述:
解决方案1:
描述:
例如:
- 输入0.70710678118654752440084436210485,输出√(2)/2。
- 输入0.14285714285714285714285714285714,输出1/7。
- 输入0.19626156828141249230433167893337,输出√(7)-√(6)。
- 输入1.11449230058541994398774773036850,输出√(7)-√(6)+√(5)-√(3)+√(2)-1。
请问各位有何方法?
解决方案1:
@satgo1546
同意@brayden的观点。
计算机中的浮点数与数学上的无理数不能划等号。
例如π
在数学上是3.1415926...
,在计算机中只能表示有限精度,这就意味着两者是有区别的。
问题中的因果关系被颠倒了。
你可以用1/7
得到计算机中的0.14285714285714285714285714285714
,但是0.14285714285714285714285714285714
不一定与1/7
存在一一对应的关系。
你的题目是错误的. 能用 √(n)
表示的只是无理数中很小的一部分. 我认为我们不能 "将浮点数表示的无理数转化为自然显示"
其次, 这里 "浮点数表示" 也是不对的, 计算机里 浮点数 都是有精度限制的, 不可能准确的表示 所有分数.
所以应该是 用字符串 表示的, 类似 0.(142857)
, ()表示循环. 然后根据此 去求对应的分数, 我觉得还是有可能的.