python整数和浮点数相乘_关于浮点数:浮点数与整数相乘浮点数的精度

在我的计算机科学课程中,我们正在研究浮点数及其在内存中的表示方式。我已经了解了它们在内存中的表示方式(尾数/有效数,指数及其偏倚以及符号位),并且我了解了浮点数是如何相互加减的(非正规化和所有这些有趣的东西)。但是,在研究一些学习问题时,我注意到一些我无法解释的问题。

当将无法精确表示的浮点数加到自身上时,答案要比我们在数学上期望的要低,但是当同一浮点数乘以整数后,答案就精确地得出了正确的数字。

这是来自我们研究问题的一个示例(该示例是用Java编写的,为了简单起见,我对其进行了编辑):

float max = 10.0f; /* Defined outside the function in the original code */

float min = 1.0f; /* Defined outside the function in the original code */

int count = 10; /* Passed to the function in the original code */

float width = (max - min) / count;

float p = min + (width * count);

在此示例中,我们被告知结果精确地为10.0。但是,如果我们将此问题视为浮点数的总和,则会得到略有不同的结果:

float max = 10.0f; /* Defined outside the function in the original code */

float min = 1.0f; /* Defined outside the function in the original code */

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值