Introdução
Caro leitor: Pense num número natural \(abc\) com três dígitos, sendo \(a\neq c\). Depois, secretamente, inverta-o, obtendo \(cba\), e calcule a diferença do maior pelo menor. Bastará agora que nos indique o primeiro dígito dessa diferença para lhe revelarmos o resultado.
Descobrimos por que funciona o truque anterior se o experimentarmos. Por exemplo, se \(abc=165\), então \(cba=561\) e \(cba-abc=396\); se \(abc=990\), então \(cba=099\) e \(abc-cba=891\); em geral, nas condições pedidas pelo truque, a diferença \(abc-cba\) (ou \(cba-abc\)) é sempre um número da forma \(\alpha9\beta\) e, além disso, tem-se \(\alpha+\beta = 9\); daí que, conhecendo \(\alpha\), saibamos qual é o número.
O valor de \(\alpha + \beta\) não nos surpreende: uma vez que um número e a sua versão invertida têm a mesma soma dos respetivos dígitos, eles estão na mesma classe de congruência módulo \(9\) e, portanto, a diferença entre eles é um múltiplo de \(9\). A imagem da transformação \(f\), que atua no conjunto \(N_{3}\) dos números naturais com três dígitos (permitindo-se zeros à esquerda) e que a cada número associa a distância dele para a sua versão invertida, contém apenas dez elementos, nomeadamente \[\{000, 099, 198, 297, 396, 495, 594, 693, 792, 891\}.\]
Note-se ainda que, como o domínio da função \(f\) é finito, se iterarmos \(f\), obtendo para cada \(x\) de \(N_{3}\) a respetiva órbita por \(f\), temos de chegar a um ciclo, cujos elementos estão na imagem da função \(f\). Dos dez números anteriores, \(000\) é um ponto fixo de \(f\), que atrai todos os números \(abc\) com \(a=c\); e \[099\rightarrow 891\rightarrow 693\rightarrow 297\rightarrow 495\] é um ciclo de período \(5\) a que chegam todas as outras órbitas em não mais do que duas iterações de \(f\) (ver figura seguinte).
http://wolfram.com/cdf-player