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小程序
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.