zadach476.PAS

{* Задача 476 *}

Unit ZADACH476;
Interface
Implementation
Begin
 writeln('

Даны две матрицы А(n x n), В(n x n). Определить можно ли отражением относительно главной диагонали преобразовать одну в другую. Описать процедуру отражения матрицы относительно главной диагонали.

'
);
End.

Program p5;

Uses zadach476.pas; {* Эту строку можно удалить *}
Const {* Константы *}
  n = 3;
Type {* Создание новых типов данных *}
  mass = Array [1..n, 1..n] Of integer;
Var {* В работе нам потребуются переменные: *}
  a                 : mass;
  b                 : mass;
  a1                : mass;
  b1                : mass;
  i                 : integer;
  j                 : integer;
  fl                : integer;
Procedure Diag (x : mass;
Var {* Объявление переменных *}
  x1 : mass);
Var {* В работе нам потребуются переменные: *}
  i : integer;
  j : integer;
Begin
  For i := 1 To n Do {* Цикл для i => [1 .. n] *}
    For j := 1 To n Do {* Цикл для j => [1 .. n] *}
      x1[j, i] := x[i, j];
End;
Begin
  writeln ('Введите массив a');
  For i := 1 To 3 Do {* Цикл для i => [1 .. 3] *}
    For j := 1 To 3 Do {* Переменная j увеличивается с 1 до 3 *}
      read (a[i, j]);
  writeln ('Введите массив b');
  For i := 1 To 3 Do {* Переменная i увеличивается с 1 до 3 *}
    For j := 1 To 3 Do {* Увеличиваем j от 1 до 3 с шагом 1 *}
      read (b[i, j]);
  Diag(a, a1);
  For i := 1 To 3 Do {* Переменная i увеличивается с 1 до 3 *}
    For j := 1 To 3 Do {* Увеличиваем j от 1 до 3 с шагом 1 *}
      If a1[i, j] = b[i, j] Then
        fl := 1
      Else fl := 0;
        If fl = 1 Then
          writeln ('Можно')
        Else writeln ('Нельзя');
End.