from sys import stdout scale = 10000 maxarr = 2800 arrinit = 2000 carry = 0 arr = [arrinit] * (maxarr + 1) for i in xrange(maxarr, 1, -14): total = 0 for j in xrange(i, 0, -1): total = (total * j) + (scale * arr[j]) arr[j] = total % ((j * 2) - 1) total = total / ((j * 2) - 1) stdout.write("%04d" % (carry + (total / scale))) carry = total % scale
运行结果如下:
314159265357932384623383279502884197169399375105820974944592307810628620986280348253421170679821480865132823067093844609550582231725359408128481117450284102701938521105559462294549303819428810975665933446128475823378678316527120190914585669234603486104543268213393607260249141273724587006606315588174881520920962829254091715336725903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527241227938183011949129833673362440656308602139494639522473719070217986094370277053921717629317675238467481846766940513200056812714526356082778577134275776091736371787214684409012249534301465495853710507922796252354201995611212902196080344181598136297747713099605187072113499999983729780499510597317328160963185
希望本文所述对大家的Python程序设计有所帮助。
下载本文