Необходимо вывести «YES», если заданный двумерный целочисленный массив В размера n × n (где n - это целое число от

  • 50
Необходимо вывести «YES», если заданный двумерный целочисленный массив В размера n × n (где n - это целое число от 1 до 10) является симметричным относительно его главной диагонали. В противном случае, необходимо вывести «NO».
Babochka
36
Конечно, я могу помочь вам с этой задачей.

Для начала, давайте разберемся, что значит, что массив является симметричным относительно его главной диагонали. Главная диагональ массива - это линия, которая идет от верхнего левого угла до нижнего правого угла массива. По определению, массив будет симметричным относительно главной диагонали, если элементы, расположенные выше этой диагонали, будут симметричны (равны) элементам, расположенным ниже диагонали.

Теперь приступим к решению задачи.

# Шаг 1:
Нам нужно создать двумерный массив размера n × n и заполнить его числами.

Для этого мы можем использовать два вложенных цикла: один для перебора строк, другой - для перебора столбцов. Внутри вложенных циклов мы просим пользователя ввести число для каждой позиции в массиве.

python
n = int(input("Введите размерность массива n: "))
array = []
for i in range(n):
row = []
for j in range(n):
num = int(input(f"Введите число для позиции [{i}][{j}]: "))
row.append(num)
array.append(row)


# Шаг 2:
Теперь у нас есть заполненный массив. Мы можем проверить, является ли он симметричным относительно главной диагонали.

Для этого нам потребуется еще один вложенный цикл для сравнения элементов выше и ниже главной диагонали.

python
is_symmetric = True
for i in range(n):
for j in range(i + 1, n):
if array[i][j] != array[j][i]:
is_symmetric = False
break


# Шаг 3:
Теперь мы проверили все элементы выше и ниже главной диагонали. Осталось только вывести результат.

Если массив является симметричным, то мы выводим "YES", в противном случае - "NO".

python
if is_symmetric:
print("YES")
else:
print("NO")


Вот и всё! Теперь у нас есть полное решение для задачи. Если у вас возникнут вопросы или потребуется дополнительная помощь, не стесняйтесь спрашивать.