Goodstein Sequence: Difference between revisions

Content added Content deleted
m (→‎{{header|Phix}}: cut out the middleman, fix a trailing ".0" which had crept in)
Line 151: Line 151:
for i,d in digits(n,b) do
for i,d in digits(n,b) do
if d then
if d then
res += d*power(b+1,bump(i-1,b))
res += d*round(power(b+1,bump(i-1,b)))
end if
end if
end for
end for
return res
return res
end function

function A059934(atom n, k)
for i=1 to k do
n = bump(n, i+1)-1
end for
return n
end function
end function


Line 167: Line 160:
sequence res = {n}
sequence res = {n}
while length(res)<maxterms and res[$]!=0 do
while length(res)<maxterms and res[$]!=0 do
res &= A059934(n,length(res))
res &= bump(res[$],length(res)+1)-1
end while
end while
return res
return res