找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 4220|回复: 1

[代码与实例] 做的第一个程序:冰雹猜想

2

主题

2

帖子

2

积分

贫民

积分
2
cilonl 发表于 2021-7-26 15:24:10 | 显示全部楼层 |阅读模式
i=int(input(">"))
numbers=[]

while i!=1:
   
    if 0==i%2:
      numbers.append(i)
      i=i/2
      i=round(i)
   
    elif 1==i%2:
      numbers.append(i)
      i=i*3+1
      
numbers.append(1)
print(numbers)

回复

使用道具 举报

0

主题

102

帖子

102

积分

侠客

积分
102
傻眼貓咪 发表于 2021-8-18 15:21:31 | 显示全部楼层
  1. def CollatzConjecture(num: int) -> int:
  2.     while num != 1:
  3.         if num%2 == 0:
  4.             yield num
  5.             num >>= 1
  6.         elif num%2 == 1:
  7.             yield num
  8.             num *= 3; num += 1
  9.     yield num

  10. num = int(input(">"))
  11. arr = list(CollatzConjecture(num))
  12. print(arr)
复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表