Программисты, спасайте! Код все время возвращает True. Помогите найти ошибку, очень нужно!((.
Программисты, спасайте! Код все время возвращает True. Помогите найти ошибку, очень нужно!((.
Проблема в вашем коде заключается в том, что вы используете оператор return внутри цикла, что приводит к преждевременному выходу из функции. Вместо этого, вы должны использовать оператор return только после завершения всех итераций циклов.
Вот исправленный код:
def input_list2d():
a = []
n = int(input())
for i in range(n):
x = input().split()
for j in range(len(x)):
x[j] = int(x[j])
a.append(x)
return a
def is_symm(a):
for i in range(len(a)):
for j in range(len(a[0])):
if a[i][j] != a[j][i]:
return False
return True
a = input_list2d()
if is_symm(a):
print("ДА")
else:
print("НЕТ")
Теперь функция is_symm
будет проверять все элементы таблицы и возвращать False
, если хотя бы один элемент не соответствует условию симметрии. Если все элементы проходят проверку, функция вернет True
.