gpt4 book ai didi

c++ - 无穷大的 float 是否满足这些方程?

转载 作者:行者123 更新时间:2023-11-30 01:15:55 24 4
gpt4 key购买 nike

对于 double 或 float ,

1. -inf < inf == true

2. inf + inf == inf

3. -inf - inf == -inf

4. positive / 0.0 == inf

5. negative / 0.0 == -inf

6. any real number < inf == true

7. -inf < any real number == true

这个说法是真的吗?

我们不知道(inf < inf) ,但我们可以确定它不会抛出任何异常。

最佳答案

问题中所有表达式 1-7 的计算结果都是 true当由实现 IEEE 754 规则的编译器编译时。它们都不依赖于舍入模式。对于许多人来说,这仅仅是因为 <==是精确的操作。此外,-inf - inf总是 -inf (即在所有舍入模式下),positive / 0.0总是 +inf , 和 negative / 0.0总是 -inf .

在下面的 6. 和 7. 中,通常将您所指的值称为“有限”而不是“真实”。

  1. any real number < inf == true

  2. -inf < any real number == true

inf < inf总是评估为假。这与您问题中的所有属性 1-7 一样,应被视为约定俗成的问题。决定制作inf等于它自己,所以它不严格小于它自己。所有这些选择都是为了使 IEEE 754 算法在实践中尽可能有用。换句话说,目的是让尽可能多的算法可以实现,而不必明确检查这些特殊值,并且在它们出现时计算继续有意义(如果适用)。当特殊值没有意义时,当然总是有可能对其进行测试。

关于c++ - 无穷大的 float 是否满足这些方程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27721742/

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