Python实现Collatz序列(考拉兹猜想)

考拉兹猜想(英语:Collatz conjecture),又称为奇偶归一猜想、3n+1猜想、冰雹猜想、角谷猜想、哈塞猜想、乌拉姆猜想或叙拉古猜想,是指对于每一个正整数,如果它是奇数,则对它乘3再加1,如果它是偶数,则对它除以2,如此循环,最终都能够得到1。

1.编写一个Collatz函数

def collatz(number):
    if number % 2 == 0:
        return number / 2
    else:
        return 3 * number + 1

2.让用户输入一个整数并不断调用这个collatz(),直到函数返回值为1

try:
    num = int(input('> '))
    while num != 1:
        num = collatz(number = num)
        print num
except:
    print 'Error!'

 

posted @ 2018-04-07 14:01  进击的嘎嘣脆  阅读(2389)  评论(0编辑  收藏  举报