数学者ポール・エルデシュは「数学はまだこの種の問題に対する用意ができていない」と述べ、解決した人に500ドルを提供すると申し出た。
まあ全くわからんわけだが、プログラム作って動かしてみると確かに最後には「1」になるんだよね。数学って不思議。以下pythonでのコード。
#!/usr/bin/python
import sys
def collatz(x) :
print x
if x % 2 == 0 :
x = x / 2
else :
x = x * 3 + 1
if x != 1 :
collatz(x)
else :
print x
if __name__ == '__main__' :
collatz(int(sys.argv[1]))
:!python collatz.py 10
10
5
16
8
4
2
1
Sponsored Link
コメント