Некоторая ошибка при выполнении программы ниже

1
n= int(input())
x = int(input())
for i in range (1,x+1):
   print()
   a = 0
   while(a<=x):
       for j in range((i*n),(i*n)+a):
           print(j,end="")
           a+=1

если я запускаю программу, она не дает выход, а принимает бесконечные входные данные, пожалуйста, сообщите мне об ошибках и дайте вашей программе следующий вопрос. Программа должна принимать два значения целого числа n и x в качестве входных данных и печатать выходные данные в нужном шаблоне:

Пример ввода/вывода

вход:

8 5

выход:

8  
16 17  
24 25 26  
32 33 34 35  
40 41 42 43 44  
Теги:
python-3.x

2 ответа

0
Лучший ответ

Ваш инициализируется как a 0, так ваш внутренний for цикла никогда не выполняется в range((i*n),(i*n)+a) не порождает ничего, и a+=1 утверждение никогда не будет выполнено, в результате чего бесконечное while цикл.

Вы можете использовать вложенную for цикла вместо:

n = int(input())
x = int(input())
for i in range(1, x + 1):
    for j in range(i):
        print(i * n + j, end=' ')
    print()
0

одна из проблем заключается в том, что вы не увеличили. Таким образом, while(a<=x): бесконечно

  • 0
    извините, я забыл упомянуть + = 1 в моем вопросе
  • 0
    Другая проблема заключается в том, что, поскольку ваши минимальное значение и максимальное значение в диапазоне (min_value, max_value) одинаковы, я имею в виду (i n) и (i n) + a одинаковы, когда есть a, это не проходит для ,

Ещё вопросы

Сообщество Overcoder
Наверх
Меню