Нужно найти ошибку в задаче с двумерным массивом

Дан двумерный массив и число i. Если элемент массива больше числа i, записать вместо него символ «-».

Мой код:

   import random

    n=int(input('N(строки)='))
    m=int(input('M(столбцы)='))
    a=[0]*n

    for i in range(n):
        a[i]=[0]*m

    for i in range(n):
        for t in range(m):
            a[i][t]=random.randint(0,10)

    print('Ваша матрица:')
    for i in range(n):
        for t in range(m):
            print(a[i][t],end = " ")
    print()

    i = int(input('i = '))

    for i in range(n):
        for t in range(m):
            if a[i][t]>i:
                a[i][t] = '-'

    print('ИТОГ:')
    for i in range(n):
        for t in range(m):
            print(a[i][t],end = " ")
    print()

введите сюда описание изображения


Ответы (1 шт):

Автор решения: Сергей

Надо давать переменным осмысленные имена. Иначе так часто будет:-)

Вы сначала переменную для сравнения называете i, а потом переменную цикла ровно так же, начисто стирая то, что ввели.

# Тут надо переименовать
reference_value = int(input('i = '))

    for i in range(n):
        for t in range(m):
            if a[i][t] > reference_value:
                a[i][t] = '-'
→ Ссылка