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

时间:2018-04-07 14:53:37   收藏:0   阅读:2714

考拉兹猜想(英语: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!

技术分享图片

 

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!