百科问答小站 logo
百科问答小站 font logo



怎样实现浮点数除以一个数再乘以这个数结果等于原值? 第1页

  

user avatar   Ivony 网友的相关建议: 
      

浮点数不能做精确计算,不能保证得到这个结果。只有把浮点数先精确的转换为一个可以做精确计算的数,例如有理数,然后再计算,再转换回浮点数。但是,仍然不能保证转换回浮点数的时候没有损失。也就是说,如果将浮点数1.0转换为可以精确计算的有理数,然后除以3,这时候有理数可以精确保存1/3这个结果,但是如果将1/3这个结果转换回浮点数,那么必然造成精度损失(除非是3进位浮点数),这时候数据就丢失了,再乘以3不能保证复原为1。只有1/3这个有理数进行乘以3计算可以精确的得到有理数1,再转换为浮点数1,此时不会丢失数据。




  

相关话题

  请问可以给出一个自己对于所在生存空间(宇宙)的终极解释吗?(可公式理论,可想象,可哲学)? 
  物理学常量(例如光速)把量纲去除(如果有的话)都是有理数还是无理数? 
  如何看待计算机科学几乎渗透到所有学科的研究当中? 
  如何证明这道不等式? 
  如何面对算法竞赛的焦虑? 
  为什么费马大定理表述起来这么简单,证明却这么复杂? 
  英国人真的连乘法口诀都不熟悉么? 
  为什么教科书要写的这么复杂? 
  有哪些比较魔性的函数图象? 
  工程上存在那么多不确定情况,为什么计算机不能利用它们产生真随机数,而只能根据逻辑产生伪随机数? 

前一个讨论
在一个无尘的暗室里面,从一束激光的旁边观察是不是无法观察到这束激光?
下一个讨论
为什么叫浮点数?





© 2024-09-19 - tinynew.org. All Rights Reserved.
© 2024-09-19 - tinynew.org. 保留所有权利