def collatz(number):
if number%2 == 0:
print('number/2')
return number / 2
elif number%2 == 1:
print('3 * ' + str(number) + ' + 1')
return 3*number+1
#collatz猜想也叫3n+1猜想,给一个正整数,如果是偶数,则减半;如果是奇数,则变为它的三倍加一。直到变为一停止。猜想对于所有正整数经过足够多次变换最终达到1。</pre><br>
#所谓完整,乃相对而言:有输入判定,可控的开始,可控的结束,每级计算步骤的显示。
print('this is a Collatz array program. Type exit to exit')
quitFlag = ''#判定用户是否想开始计算
conExit = ''#退出程序的阀门
while conExit != 'exit':
print('Do you want to Continue? yes or no')
quitFlag = input()
if quitFlag == 'yes':
try:
print('please enter a number')
userInput = int(input())
while True:
userInput = collatz(userInput)
print(userInput)
if userInput == 1:
break except
ValueError:
print('please enter INT number!')
elif quitFlag == 'no':
print('Program exited')
conExit = 'exit' 完整的写一个Python小程序
最新推荐文章于 2026-03-10 00:11:05 发布
本文介绍了一个基于Collatz猜想的程序实现,通过用户输入任意正整数,程序将展示从该数字出发,按照偶数除以2、奇数则乘以3加1的规则变换直至到达1的过程。

528

被折叠的 条评论
为什么被折叠?



