是否存在无损的除法算法?

时间:2011-03-25 03:09:39

标签: computer-science

那么Math中的方程式(如p * 1/p = 1)将始终保存在计算机中?

2 个答案:

答案 0 :(得分:6)

如果你将你的号码存储为分子/分母对,那么,是的,你可以使它无损。

即表示,我的意思是10除以3后的数字不是3.3333333而是存储为{10,3}。这意味着,当您再次将其乘以3时,它将变为10

当然,这可能不适用于所有边缘情况。你仍然无法表示像PI这样的无理数或2的平方根,因为它们既不能表示为有限的十进制序列,也不能表示为比率。

但是,对于除法(使用有理数),我无法设想一个不起作用的边缘情况。

答案 1 :(得分:0)

使用任意精度算术库(如GNU GMP)来获得“无限精度”数字。该图书馆位于:

http://gmplib.org/