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

Posted 进击的嘎嘣脆

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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!\'

 

以上是关于Python实现Collatz序列(考拉兹猜想)的主要内容,如果未能解决你的问题,请参考以下文章

考拉兹猜想,

考拉兹猜想的变体

Python练习题 042:Project Euler 014:最长的考拉兹序列

3n+1 猜想(python实现)

Collatz 序列_Python实现

1001 害死人不偿命的(3n+1)猜想 python实现