如何编写程序打印出 1 和给定数字之间的所有正整数,并在范围的两端之间交替?

新手上路,请多包涵

该程序应按如下方式工作:

 Please type in a number: 5
1
5
2
4
3

我的代码不这样做。我认为应该有第二个循环,但我真的不明白我该怎么做。你能给我一个提示或建议来解决这个任务吗?谢谢。我的代码如下所示:

 num = int(input("Please type in a number:"))
n=0
while num>n:
    a = num%10
    num -= a
    num = num/10
    print(a)
    n = n + 1
print(n)

原文由 Denis 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 424
2 个回答

这应该工作:

 num = int(input("Please type in a number:"))
number_list = [i+1 for i in range(num)]

while number_list:
    print(number_list.pop(0))
    number_list.reverse()

原文由 Chris J 发布,翻译遵循 CC BY-SA 4.0 许可协议

x = flag = 1
for i in range(n-1, -1, -1):
    print(x)
    flag, x = -flag, x+flag*i

原文由 Marat 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题