为了账号安全,请及时绑定邮箱和手机立即绑定

如何将浮点数表示的无理数与分数转化为自然显示?

如何将浮点数表示的无理数与分数转化为自然显示?

素胚勾勒不出你 2019-04-16 17:06:08
例如:输入0.70710678118654752440084436210485,输出√(2)/2。输入0.14285714285714285714285714285714,输出1/7。输入0.19626156828141249230433167893337,输出√(7)-√(6)。输入1.11449230058541994398774773036850,输出√(7)-√(6)+√(5)-√(3)+√(2)-1。请问各位有何方法?
查看完整描述

2 回答

?
蓝山帝景

TA贡献1843条经验 获得超7个赞

你的题目是错误的.能用√(n)表示的只是无理数中很小的一部分.我认为我们不能"将浮点数表示的无理数转化为自然显示"
其次,这里"浮点数表示"也是不对的,计算机里浮点数都是有精度限制的,不可能准确的表示所有分数.
所以应该是用字符串表示的,类似0.(142857),()表示循环.然后根据此去求对应的分数,我觉得还是有可能的.
                            
查看完整回答
反对 回复 2019-04-16
?
潇潇雨雨

TA贡献1833条经验 获得超4个赞

@satgo1546
同意@brayden的观点。
计算机中的浮点数与数学上的无理数不能划等号。
例如π在数学上是3.1415926...,在计算机中只能表示有限精度,这就意味着两者是有区别的。
问题中的因果关系被颠倒了。
你可以用1/7得到计算机中的0.14285714285714285714285714285714,但是0.14285714285714285714285714285714不一定与1/7存在一一对应的关系。
                            
查看完整回答
反对 回复 2019-04-16
  • 2 回答
  • 0 关注
  • 487 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信