A conjetura de Collatz, ou o problema 3x+1, pode resumir-se da seguinte forma:
Escolhe qualquer número inteiro positivo n. Se n for par, divide n por 2 para obter n / 2. Se n for ímpar, multiplica n por 3 e soma 1 para obter 3n + 1. Repete o processo indefinidamente. A conjetura diz que, independentemente do número pelo qual começas, acabas sempre por chegar a 1.
Dado um número n, devolve o número de passos necessários para chegar a 1.
Começando com n = 12, os passos seriam os seguintes:
O que dá 9 passos. Assim, para o valor de entrada n = 12, o valor devolvido seria 9.
Este exercício presta-se bem a uma solução recursiva.
Inscreve-te no Exercism para aprenderes e dominares Pharo com 50 exercícios, e mentoria humana real, tudo grátis.