如何从每次迭代的for循环中打印while循环的输出



我知道我需要一个for循环,我试图打印输入数字(作为最大值),然后打印达到1所需的步数。当前程序打印输入数字和该输入数字的步数,我需要它打印每个输入数字和每个数字对应的步数为1,并伴有相关的步数。如果我输入2,它应该说2需要1步,然后1需要0步。

n = int(input('n? '))
n_steps = 0
num=n
while n > 1:
n_steps+=1
if n % 2 == 0:
n = n // 2
else:
n = n * 3 + 1
print(str(num) + ' takes ' + str(n_steps) + ' steps')

你想做这样的事情吗?

num = int(input('n? '))
for i in range(num, 0, -1):
n_steps = 0
n = i
while n > 1:
n_steps += 1
if n % 2 == 0:
n = n // 2
else:
n = n * 3 + 1
print(str(i) + ' takes ' + str(n_steps) + ' steps')

相关内容

  • 没有找到相关文章

最新更新