N is a positive integer and F(N) denotes the sum of the base ten digits of N.
Find F(F(F(2^{2016}))) and F(F(F(F(2^{2016}))))
*** As an extra challenge, solve the puzzle without using a computer program assisted method.
10 print fnSOD(fnSOD(fnSOD(2^2016)))
20 print fnSOD(fnSOD(fnSOD(fnSOD(2^2016))))
60 end
70 fnSOD(X)
80 SOD=0
90 S=cutspc(str(X))
100 for I=1 to len(S)
110 SOD=SOD+val(mid(S,I,1))
120 next
130 return(SOD)
finds the answers are 10 and 1 respectively.
(F(2^2016)=2656 and F(F(2^2016))=19, found by adding a couple of lines ahead of line 10 above)
Of course now that I know this, the road to an analytic solution becomes clearer.
The digital root of a number, n, is n mod 9, where the digital root is the sum of the digits function, F() as defined in this puzzle, applied repeatedly until one digit is left.
2^2016 has ceil(2016*log(2)) = 607 digits. Even if they were all 9 the sod would be 5463. The maximum sod which could result from that, in turn, would be sod(4999) or 31. The maximal sod from that would be that of 29, or 11. The next sod would be a single digit.
The powers of 2 have values mod 9, and therefore digital roots, in a cycle of 6: 2, 4, 8, 7, 5, 1, and 2016 is a multiple of 6, so the digital root is 1, and per the preceding paragraph, F(F(F(F(2^2016)))) is indeed the digital root of 2^2016, as it is only one digit.
If we could show that F(F(F(2^2016))) has two digits we'd know it had to be 10 in order to make the next sod 1.

Posted by Charlie
on 20150331 14:43:39 