第015 动动手 验证角谷猜想
角谷猜想的内容是:任意给定一个自然数,若它为偶数则除以 2,若它为奇数则乘以 3 再加 1,得到一个新的自然数,按照这样的方法计算下去,最终的结果必将是 1。比如给定的自然数是5,则 5 * 3 + 1 = 16 -> 16 / 2 = 8 -> 8 / 2 = 4 -> 4 / 2 = 2 -> 2 / 2 = 1
答案代码如下:
n = int(input("请输入一个自然数:"))
for i in range(1000):
if n%2==0:
print(n,'/2=',n//2,sep='')
n=n//2
else:
print(n,'*3+1=',n*3+1,sep='')
n=n*3+1
if n == 1:
break
问题:“for i in range(1000):”,后面的代码没有提到“i”,为什么要在这里给“i”确定一个范围呢?
非常感谢!
为了让程序循环1000次,i相当于计数器 这里相当于把下面的代码块循环运行 1000 次 , 当 i = 999 时 , 循环会停止运行
为什么是 999 , 因为 i 是从 0 开始的,相当于循环 1000 次 柿子饼同学 发表于 2021-8-24 14:17
这里相当于把下面的代码块循环运行 1000 次 , 当 i = 999 时 , 循环会停止运行
为什么是 999 , 因为 i 是 ...
谢谢哈 逃兵 发表于 2021-8-24 14:09
为了让程序循环1000次,i相当于计数器
谢谢哈
页:
[1]