gpt4 book ai didi

阶乘的精度运算和溢出

转载 作者:行者123 更新时间:2023-12-03 08:17:00 25 4
gpt4 key购买 nike

回想一下 IEEE double 算法。现在,为此 n > 1可以binom(n,k)以 IEEE double 计算?另外在同一区间,中间阶乘值什么时候会溢出?

对于我的第一个问题,我找到了区间 n < 2^53 。虽然不确定这是否正确。

最佳答案

对于给定的 nk = [n/2] 的最大 binom(n, k) 值(整数部分n/2)。对于 binom(n, k) 以 double 精度格式表示,因此 binom(n, [n/2]) 足以表示。

下面列出了 binom(n, [n/2]) 的精确表示所需的位数(二进制数字)(使用类似于 this one 的查询从 Wolfram Alpha 检索) .

 n       binom(n, [n/2])

56 53 bits
57 54 bits

下面列出了 binom(n, [n/2]) 的二进制指数形式的值。

 n       binom(n, [n/2])

1029 1.1... * 2^1023
1030 1.1... * 2^1024

所有 binom(n, k) 可以用 double float (53 位尾数)精确表示的最大 n56.

所有 binom(n, k) 可以用 double float (11 位指数)近似表示的最大 n1029.

n! 的类似最大限制是 n = 18(精确表示)和 n = 170(浮点近似)。

关于阶乘的精度运算和溢出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35007757/

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