我有一个编写奇数的任务

时间:2018-03-08 16:36:57

标签: python loops input

我想打印与输入一样多的奇数。

示例:input = 7 产量:1,3,5,7,9,11,13

这就是我写的

a=int(input("input how many odd numbers to print: "))
for i in range(a):
    if(i%2==1):
        print(i)

是的,输出很明显 1 3 5

我也试过这个

a=int(input("input ho many odd numbers to print: "))
i=1
while(i<=a):
    if(i%2==1):
        print(i)

输出是无限循环打印输入数

3 个答案:

答案 0 :(得分:5)

a=int(input("input how many odd numbers to print: "))
for i in range(1,a*2,2):
    print(i)

答案 1 :(得分:0)

如果你真的想使用while循环

i = 1
counter = 0
while counter < a:
    if i % 2 == 1:
         print(i)
         counter += 1
    i += 1

答案 2 :(得分:-3)

while-loop中,变量i永远不会改变,因此您只是一遍又一遍地重印相同的数字。试试这个:

while(i<=a):
    if(i%2==1):
        print(i)
    i += 1