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



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

  

user avatar   Ivony 网友的相关建议: 
      

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




  

相关话题

  计算机科学与技术是什么专业是不是很杂很广泛很难学精? 
  一道程序员面试题? 
  大学读计算机相关专业,可以买 MacBook 吗? 
  为什么ipconfig和浏览器查询出的ip不一样? 
  计算机科学领域有哪些「民科」和「反智现象」? 
  如何利用群论的知识解决三阶魔方? 
  数学这门学科真的重要吗? 
  你为什么要学算法? 
  C语言能用指针修改其他程序的地址的值吗? 
  有没有反三角函数的「和差角公式」? 

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





© 2025-06-17 - tinynew.org. All Rights Reserved.
© 2025-06-17 - tinynew.org. 保留所有权利