RosettaCodeData/Task/Iterated-digits-squaring/Frink/iterated-digits-squaring.frink
2023-07-01 13:44:08 -04:00

30 lines
403 B
Text

total = 0
d = new dict
var sum
for n = 1 to 100 million - 1
{
sum = n
do
{
if sum < 1000 and d@sum != undef
{
sum = d@sum
break
}
c = sum
sum = 0
for digit = integerDigits[c]
sum = sum + digit^2
} while (sum != 89) and (sum != 1)
if (n < 1000)
d@n = sum
if (sum == 89)
total = total + 1
}
println[total]