用户:
俊秀的铁奥Rpyk查看:0 回复:1 评论:0 创建时间:2019-12-17T16:58:02
【作品展示】

【作品介绍】
今天老师讲的
【作品源代码】
def bingbao(n):
while n !=1:
if n % 2 == 0:
n = n // 2
else:
n = 3 * n + 1
arr.append(n)
if 1<2:
arr = []
n= int(input("请输入正整数:"))
bingbao(n)
print(arr)
【提示】
部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:
https://python.codemao.cn
急_开_锁_办_证810864你在函数中用到了在函数外设置的变量arr,一般这不是好的做法。除非你明白闭包在Python中的通途,否则尽量避开这种写法。
也不知道你想问什么,给你一个示例:
def collatz( n ): #设定函数
print(n, end=" ") #先输出n本身
while n > 1: #没有到1就一直循环
if n % 2 == 0: #如果当前的数是奇数
n = n // 2
else: #如果当前的数是偶数
n = 3 * n + 1
print(n, end=" ") #就地输出当前的数,如无特殊要求就不必存入列表,那样浪费空间
#主程序从这里开始
n = int( input("打雷啦下雨收衣服啊") )
collatz(n) #调用函数点赞0
评论