import time
begTime = time.clock()
def prime(trianglenum):
divisor=[]
while trianglenum != 1:
for i in range(2,trianglenum+1):
if trianglenum % i == 0:
trianglenum //= i
divisor.append(i)
break
return divisor
num=1
n=2
while num <=500:
num=1
s1=sum(range(1,n))
n+=1
divisor=prime(s1)
a1=list(set(divisor))
for each in a1:
count1=divisor.count(each)
num*=(count1+1)
print('因子',divisor)
s1=1
for each in divisor:
s1*=each
print('三角数%d 有%d个约数' %(s1,num))
print(time.clock() - begTime)
因子 [2, 2, 3, 3, 5, 5, 5, 7, 11, 13, 17]
三角数76576500 有576个约数
5.7881082194113835
|