You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python统计Collatz序列程序中数字的打印次数

我编写了一个简易的考拉兹(Collatz)序列展示程序,想要统计程序运行过程中number的打印次数,从而计算输入数字最终变为1所需的步骤数。对考拉兹序列不太了解的用户可以运行我的代码进行体验:

import sys

def collatz(number):

    if number <= 0:
        print("Next time, enter an integer greater than 1.")
        sys.exit()

    while number % 2 == 0:
        number = number // 2
        print(number)

    if number == 1:
        sys.exit()

    while number % 2 != 0:
        number = 3*number+1
        print(number)
        collatz(number)


print("""Enter a number.
Even number is halfed, odd number is multiplied by 3 and 1 is added to the product.
This is called as Collatz sequence.
Watch as your number slowly becomes 1.
Enter a positive integer:""")
try:
    collatz(int(input()))
except ValueError:
    print("Next time, Enter a positive integer, you dummy...")

内容的提问来源于stack exchange,提问作者Namit Gupta

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 04:06:03