gpt4 book ai didi

javascript - `Math.floor(a/a) == 1` 是否保证任何 `a` 使得 `a/a` 不是 NaN?

转载 作者:行者123 更新时间:2023-11-30 08:21:23 24 4
gpt4 key购买 nike

考虑到 float 的不精确性,这个等式是否保证对于 a 的任意数值都成立,除法运算 a/a 返回一个数字值(value)?

Math.floor(a / a) == 1

最佳答案

IEEE 754 指定操作的结果是四舍五入到最接近的可表示值的精确数学结果(在用户可以指定的方向上——向上、最近等)。当精确的数学结果可表示时,它是最接近的值,没有四舍五入,所以结果是精确的。因此,只要没有发生异常,a/a 就是 1。

如果我没记错的话,JavaScript 不允许实现使用过高的精度(例如,C 就允许)。所以 a/a 被按预期评估。那么Math.floor(a/a)为1,Math.floor(a/a) == 1为真。

关于javascript - `Math.floor(a/a) == 1` 是否保证任何 `a` 使得 `a/a` 不是 NaN?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53027225/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com