Descrição do Desafio
Vamos pegar um número inteiro positivo n, reverter seus dígitos para obter rev(n)e obter o valor absoluto da diferença desses dois números: |n - rev(n)|(ou abs(n - rev(n))).
Exemplo:
n = 5067
rev(n) = 7605
|n - rev(n)| = |5067 - 7605| = |-2538| = 2538
Depois de repetir essa operação várias vezes, a maioria dos números se tornará 0(terminando assim o loop) ...
5067 -> 2538 -> 5814 -> 1629 -> 7632 -> 5265 -> 360 -> 297 -> 495 -> 99 -> 0
... embora alguns números (como 1584) fiquem presos em um loop infinito:
1584 -> 3267 -> 4356 -> 2178 -> 6534 -> 2178 -> 6534 -> 2178 -> 6534 -> ...
^ infinite loop starts here
Seu trabalho é determinar se um número inteiro fica preso em um loop infinito.
Descrição da entrada
Um número inteiro positivo.
Descrição da saída
Um valor verdadeiro ( True, 1) se o número ficar preso em um loop infinito, um valor falso ( False, 0) caso contrário.
Notas
- Zeros à direita devem ser omitidos. ie
rev(5020) = 205. - Lembre-se de que isso é código-golfe , portanto, faça seu código o mais curto possível!
- Sequência relevante: A072140