def collatz(number):
if number%2==0:
print(number//2)
return (number//2)
else:
print(3*number+1)
return (3*number+1)
print("Enter your number :")
nu=int(input())
while True:
nu=collatz(nu)
if nu==1:
break
本題主要考察的是Python函數的定義,以及循環。本題其實只要按照定義很容易將函數構造出來
唯一一點難點在,如何理解反覆調用這句話,其實這句話等價於返回值又成爲函數的參數(nu=collatz(nu))明白這個利用循環很容易構建這個程序呢,但是如何不能成爲死循環呢,注意退出條件