我一直在尝试通过使无聊的东西自动化来完成一项任务。 这就是任务。“编写一个名为collatz()的函数,该函数具有一个名为number的参数。如果number是偶数,则collatz()应该输出number // 2并返回该值。如果number为奇数,则collatz()应该打印并返回3 *数字+ 1。
然后编写一个程序,让用户键入一个整数,并继续对该数字调用collatz(),直到该函数返回值1。在前面的项目中添加try和except语句,以检测用户是否键入了非整数字符串。”
def collatz(num):
ev_odd = num % 2 #detecs whether number is odd or even
if ev_odd == 1:
num = num * 3 + 1
else:
num = num//2
print(num)
global number
number = num
#the program
print('enter an integer')
number = int(input())
collatz(number)
while number != 1:
collatz(number)
我使这段代码运行正常。但是我无法使用try和except声明。需要其他建议以改进此代码。 问候