n=2
k=0
k1=0
k2=0
p=true
record=0
#number of divisors:
d=500
puts "Time started #{Time.now} looking for first triangle number with at least #{d} divisors"
while p==true do
i=1
triangle_n = n*(n+1)/2
k=0
while i<= n do
k+=1 if n % i == 0
i+=1
end
if n % 2 == 0 then
k1=k
#k=0
else
k2=k
#k=0
end
#puts "(triangle,n,k,k1,k2) (#{triangle_n},#{n},#{k},#{k1},#{k2})"
puts "Triangle number #{n+1} is #{triangle_n+n+1} and has #{k1+k2} divisors" if k1+k2>=d
p=false if k1+k2>=d
puts "Time finished #{Time.now}" if k1+k2>=d
n+=1
end