Найти произведение элементов квадратной матрицы A(n,n) — Pascal(Паскаль)

PROGRAM LAB;
CONST
     N=3;   {количество строк и столбцов}
TYPE
     AR=ARRAY[1..N,1..N] OF INTEGER;
VAR
     A:AR;      {массив А}
     I, J: INTEGER; {индексы строк, столбцов} 
     FI, FO: TEXT;  {файловые переменные}
{функция поиска произведения}
FUNCTION PR(B:AR; M: INTEGER): INTEGER;
VAR
     K, L: INTEGER; {индексы строк,столбцов}
     P: INTEGER;    {произведение}
BEGIN
     P:=1;      {начальное значение произведения}
     FOR K:=1 TO M DO
         FOR L:=1 to M DO
             P:=P*B[K,L];
     PR:=P
END; { PR }
{тело выполняемых операторов главной программы}
BEGIN 
     {открытие файла входных данных и чтение их}
     ASSIGN(FI, 'lab.inp');
     RESET(FI);
      FOR I:=1 TO N DO BEGIN
         FOR J:=1 TO N DO READ(FI,A[I,J]);
         READLN(FI)
     END;
     CLOSE(FI);
     {открытие выходного файла}
     ASSIGN (FO,'lab.out');
     REWRITE(FO);
     WRITELN(FO ,' Исходный массив A:');     
         FOR I:=1 TO N DO BEGIN
          FOR J:=1 TO N DO WRITE(FO,A[I,J]:3);
          WRITELN(FO)
     END;
     WRITELN(FO,’ P=‘,PR(A,N):3); {вывод произведения}
     CLOSE(FO);
END.

Исходный файл данных:
11 -2 10
-4 15 3
5 5 7

Выходной файл данных:
A:
11 -2 10
-4 15 3
5 5 7

P=-16816
__________

Leave a Comment

52 − = 50