Я хотел бы знать, как я могу сделать, пока l oop? - PullRequest
0 голосов
/ 24 апреля 2020
def check():
    a = 0
    b = 10

    while a <= b:
        print(a, b)
        while a <= b:
            b -=1
            print(a, b)
        a += 1

Результат:

0 10
0 9
0 8
0 7
0 6
0 5
0 4
0 3
0 2
0 1
0 0
0 -1

Ожидается результат ниже, как мне его редактировать?

0 10
0 9
0 8
0 7
0 6
0 5
0 4
0 3
0 2
0 1
0 0
0 -1

1 10
1 9
1 8
1 7
1 6
1 5
1 4
1 3
1 2
1 1
1 0
1 -1

2 10
2 9
2 8
2 7
2 6
2 5
2 4
2 3
2 2
2 1
2 0
2 -1

3 10
3 9
3 8
3 7
3 6
3 5
3 4
3 3
3 2
3 1
3 0
3 -1

до .... 10

Ответы [ 2 ]

0 голосов
/ 24 апреля 2020

Вы забыли восстановить свои начальные значения. И, вероятно, хотел третью переменную. Для ясности добавлены некоторые дополнительные переменные, чтобы вы могли следить за тем, что происходит с вашими циклами while.

def check():
        a = 0
        limit = 10
        b_initial = 10
        b = b_initial
        while(a<=limit): #We run this from a= 0 until a=limit
            #b=b_initial Alternative location to reset b to initial value of b
            while(b>=-1): #You want to decrease b until -1 for all values of a
                print(a,b)
                b-=1 # decreasing b
            a+=1 #once the inner while loop is finished increase a by 1
            b= b_initial # reset b to 10.
0 голосов
/ 24 апреля 2020

Попробуйте это:

b = 0

while b <= 10:
    a = 10
    while a >= -1:
        print(b, a)
        a -= 1
    b += 1
...