Iterated digits squaring: Difference between revisions

→‎{{header|Ruby}}: use digits method
(Add BQN)
(→‎{{header|Ruby}}: use digits method)
Line 3,303:
def iterated_square_digit(d)
f = Array.new(d+1){|n| (1..n).inject(1, :*)} #Some small factorials
g = -> (n) { res = 0n.digits.sum{|d| d*d}
whileres==89 ? n>0 : res }
n, mod = n.divmod(10)
res += mod**2
end
res==89 ? 0 : res
}
#An array: table[n]==0 means that n translates to 89 and 1 means that n translates to 1
1,149

edits