|

楼主 |
发表于 2022-7-21 10:44
|
显示全部楼层
python 代码计算 Bernoulli 数:
- from math import *
- from fractions import *
- def fctl(n):
- p = 1
- for i in range(n):
- p *= i + 1
- return p
- def comb(n, m):
- if n < m or m < 0:
- return 0
- k = min(m, n - m)
- p = 1
- for i in range(k):
- p = p * (n - i) // (i + 1)
- return p
- def BenuNm(n, l=0):
- L = [Fraction("1/1"), Fraction("-1/2"), Fraction("1/6")]
- m = len(L)
- while m <= n:
- s = 0
- if m % 2 == 1:
- L.append(Fraction("0/1"))
- else:
- for k in range(m):
- s = s - comb(m + 1, k) * L[k]
- s = s / (m + 1)
- L.append(s)
- m += 1
- if l != 0:
- LL = [str(x) for x in L]
- print("[%s]" % ",".join(map(str, LL)))
- else:
- print(L[n])
复制代码
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|