學習軌道
/
Pharo
Pharo
/
練習
/
考拉茲猜想
考拉茲猜想

考拉茲猜想

簡單

說明

Collatz 猜想,也就是 3x+1 問題,可以簡單歸納如下:

取任意正整數 n。 如果 n 是偶數,就把 n 除以 2,得到 n / 2。 如果 n 是奇數,就把 n 乘以 3 再加 1,得到 3n + 1。 不斷重複這個過程。 這個猜想指出,無論你從哪個數字開始,最後一定會到達 1。

給定一個數字 n,回傳到達 1 所需的步驟數。

範例

從 n = 12 開始,步驟如下:

  1. 12
  2. 6
  3. 3
  4. 10
  5. 5
  6. 16
  7. 8
  8. 4
  9. 2
  10. 1

總共需要 9 個步驟。 所以當輸入為 n = 12 時,回傳值會是 9。

備註

這個練習很適合用遞迴來解喔。

透過 GitHub 編輯 連結會在新視窗或分頁中開啟
Pharo Exercism

準備好開始 考拉茲猜想 了嗎?

註冊 Exercism,透過 50 個練習 和真人引導來學習並精通 Pharo,全部免費。