liangbch 发表于 2010-2-2 11:31:11

我倒是写过一个求伯努利级数的程序。因为这个程序涉及大数加,减,乘运算(除法不确定),且要求的精度较低,故没有使用大数运算库。程序代码在我的笔记本,不再手边,那天方便时我会将代码上传。

wayne 发表于 2010-2-2 14:28:14

计算Bernoulli数,在Ginac里有现成的函数:

winxos 发表于 2010-2-2 18:42:09

12# wayne
wow, wayne怎么在linux下摆弄了这么多库,以后有机会一定向wayne多多请教^_^

liangbch 发表于 2010-2-3 00:36:40

正在cygwin 下编译cln, pkg-config,ginac。 编译cln太慢了,用了将近100分钟。

wayne 发表于 2010-2-3 00:48:48

windows下我是用别人编译好的,也成功了
http://theor.jinr.ru/~varg/web/proj/ginac/woe32/

wayne 发表于 2010-2-3 00:51:24

13# winxos


很多我也是第一次用的,纯粹是玩玩而已~~

liangbch 发表于 2010-2-3 02:00:50

ginac 倒是安装成功了,但是你的程序始终无法编译通过。暂时放弃

wayne 发表于 2010-2-3 22:01:42

在msys上虽然编译有warning,但还是能成功的得到结果:

liangbch 发表于 2010-2-3 22:49:10

这个压缩包主要包含4部分,可在VC++ 6.0编译和运行。
1.LUNIT,实现了一个固定长度的大整数运算,包括加,减,乘,除,输入和输出函数,大整数的bit数在编译前设定,运行时不能改变,如果你需要使用更大的整数,请在LUINT.h中修改NUM_LEN。
2.BinPloyCoeff:计算二项式系数,是计算伯努利级数的基础,该文件夹下也包含一个dsp,可独立运行。
3.BernulliNumber:用来计算伯努利级数,需要用到BinPloyCoeff代码,可编译BernolliNumber.dsw来运行,同时也附上了编译后的文件和和算法的文档。
4.stirling:用来计算斯特林级数,需要用到BernulliNumber中的代码,和BernulliNumber一样,内含一个html文档,说明如何计算斯特林级数。
本压缩包中的所有程序均为自己书写,没有用到任何第三方组件和库。主要的目标是尽量保证代码的简洁性,性能不是第一考虑因素。

liangbch 发表于 2010-2-3 22:53:24

附上运行结果:
E:\t\stirlingSerials\BernoulliNumber\bin>BernoulliNumber.exe
B0=(1/1)
B1=-(1/2)
B2=(1/6)
B3=(0)
B4=-(1/30)
B5=(0)
B6=(1/42)
B7=(0)
B8=-(1/30)
B9=(0)
B10=(5/66)
B11=(0)
B12=-(691/2730)
B13=(0)
B14=(7/6)
B15=(0)
B16=-(3617/510)
B17=(0)
B18=(43867/798)
B19=(0)
B20=-(174611/330)
B21=(0)
B22=(854513/138)
B23=(0)
B24=-(236364091/2730)
B25=(0)
B26=(8553103/6)
B27=(0)
B28=-(23749461029/870)
B29=(0)
B30=(8615841276005/14322)
B31=(0)
B32=-(7709321041217/510)
B33=(0)
B34=(2577687858367/6)
B35=(0)
B36=-(26315271553053477373/1919190)
B37=(0)
B38=(2929993913841559/6)
B39=(0)
B40=-(261082718496449122051/13530)
页: 1 [2] 3 4
查看完整版本: 任意次幂级数和函数问题