Lv.1
看到一个小菜鸟,这使你充满了决心
签名:无限期停更...
在 问大家一道题 中回复
n_list = [1,1]
while not(len(n_list) == 1000000000):
num = n_list[len(n_list) - 1] + n_list[len(n_list) - 2]
n_list.append(num)
## print(n_list)
print(n_list[1000000000])
我电脑缓存资源炸了,自己算去
2019-06-05T12:46:18 点赞:0
在 【圆周率】又一个神奇的计算圆周率的程序 能计算到小数点后数十万位 中回复
####################导入时间模块
import time
###############计算当前时间
time1=time.time()
################算法根据马青公式计算圆周率####################
number = int(input('请输入想要计算到小数点后的位数:'))
print('计算中......')
# 多计算10位,防止尾数取舍的影响
number1 = number+10
# 算到小数点后number1位
b = 10**number1
# 求b*4/5的首项
x1 = b*4//5
# 求b/-239的首项
x2 = b//-239
# 求第一大项
he = x1+x2
#设置下面循环的终点,即共计算n项
number *= 2
#循环初值=3,末值2n,步长=2
for i in range(3,number,2):
# 求每个含1/5的项及符号
x1 //= -25
# 求每个含1/239的项及符号
x2 //= -57121
# 求两项之和
x = (x1+x2) // i
# 求总和
he += x
#求出π
pi = he*4
#舍掉后十位
pi //= 10**10
#输出圆周率π的值
f = open('pi.txt','w')
paistring=str(pi)
result=paistring[0]+str('.')+paistring[1:len(paistring)]
f.write(result)
f.close()
time2=time.time()
print('π的值已存储到当前目录的pi.txt文件中')
print ('总共耗时:'+ str((time2 - time1)//1) + '秒')
python版本
2019-06-07T16:13:02 点赞:1
在 让你的python运行界面死机的程序 中回复
import turtle
t = turtle.Pen()
t.speed(0)
a = 0
b = 0
b = 0
while (b < 10):
while (a < 5):
t.forward(100)
t.right(144)
a = (a + 1)
t.forward(15)
b = (b + 1)
print('作画完毕')2019-06-08T20:28:29 点赞:0
在 让你的python运行界面死机的程序 中回复
import numpy as np
i = 0
while True:
locals()['a'+str(i)] = np.array([])
if i % 100000 == 0:
print(i)
i+= 1
总有一天能卡喵的
2019-06-08T20:53:23 点赞:1
在 让你的python运行界面死机的程序 中回复
from os import makedir
i = 0
while True:
makedir('C:/'+str(i))
i = i+12019-06-08T21:02:13 点赞:0
在 【圆周率】又一个神奇的计算圆周率的程序 能计算到小数点后数十万位 中回复
# -*- coding: UTF-8 -*-
# 丘德诺夫斯基法計算高精度圓周率程序
# Calculating PI with Chudnovsky-Series
# Author: Idealguy,2018, Shanghai
#
import time
# In following functions, High-Prec Nums are both amplified 10**n
# pre-defined: Base=10**n
#
def Sqrt10005(): # Sqrt(10005L) by Imitate-Manual Method
n1=0
c=10002499687 #100.02499687
mc=8; m=mc
f1=10**mc
f2=f1*f1
a=10005*f2-c*c
while mc<n:
a*=f2
b=c*2*f1
d=a//b
c=c*f1+d
a-=d*(b+d)
mc+=m
if mc*2>n: m=n-mc
else: m=mc
f1=10**m
f2=f1*f1
n1+=1
return c
# Main Program
#
print ("Chudnovsky法計算高精度圓周率程序")
while 1:
n=int(input('計算位數[1..50000],0:退出:'))
## if n<=10: break
n+=2
base=10**n
t=time.clock()
# Start Calculating
A=13591409*base; B=A
c3=13591409
i=1
while abs(A)>5:
c1=((108-72*i)*i-46)*i+5
c2=10939058860032000*i**3
c4=c3; c3+=545140134
i+=1
A=A*c1*c3//(c2*c4) # Must in form: A=A*...
B+=A
p=426880*base*Sqrt10005()//B//100
# Post access
print ("用時= %8.3f 秒" % (time.clock()-t))
with open('pi.txt','w') as f:
f.write('3.'+str(p)[1:n-1])
print('pi的值已保存到当前目录:pi.txt')
# end
2019-06-15T08:12:59 点赞:0