角谷猜想,麻烦用Python语言

谓角谷猜想,是指对于任意一个正整数,如果是奇数,则乘3+1,如果是偶数,则除以2,得到的结果再按照上述规则中重复处理,最终总能得到1。如,假定初始整数为5,计算过程分别为16,8,4,2,1。程序要求输入一个整数,将经过处理得到1的过程输出来
输入:一个正整数N(N<=2000000)
输出:从输入整数到1的步骤,每一步为一行,每一部中描述计算过程。最后一行输出End.如果输入为1,直接输出End

input函数 导入N
if else 判断N是否为1
为1 输出end
不为1执行下面操作
套一个while循环 (while N大于1)
判断偶奇数语句 N对2取余 结合if else语句
if 奇数 N=3N+1
输出N
else 偶数 N=N/2
输出N

跳出循环 N=1
print End
注意:print会默认换行,写嵌套的if语句注意缩进。有任何不懂的欢迎继续提问

我把每一步的过程也输出了,如果不要的简化一个print()

def guess(n):
    if n==1:
        print('End')
        return
    if n%2:
        if n!=1:
            print(f'{n}*3+1->{n*3+1}')
            guess(n*3+1)
    else:
        print(f'{n}//2->{n//2}')
        guess(n//2)


guess(5)

guess(6)