どう書く2
取り敢えず、まずはシンプルに。
Collatz予想(角谷予想)
#! /usr/bin/python def g(i, r): r = r + 1 if i == 1: return r if i % 2 == 0: return g(i / 2, r) if i % 2 == 1: return g(3 * i + 1, r) if __name__=='__main__' : h = k = j = 0 for i in range(1, 101): k = g(i, 0) if h < k: h = k j = i print "h(100) = " + str(j) + ", g("+ str(j) +") = " + str(h)
何か思いついたらまた書く。