Дана матрица M(n,n). Получить одномерный массив A, элементы которого равны сумме элементов каждой строки исходной матрицы. В полученном массиве поменять местами первый и последний элементы. Получить результат при n=4. Написать с помощью ввода массива из файла. — Pascal(Паскаль)

 M=-12,2 35,1 -2,5 -1,4
     7,8 -7,6  0,1  0,8
    14,6  6,6 -26,2 -3,7
   -25,8  8,5  4,5  4,3
CONST
 inFileName: String = 'SERG02.DAT';
 range = 4;
VAR
 M: Array [1..range, 1..range] of real;
 A: Array [1..range] of real;
 i, j: Integer;
 buf: Real;
 t: Text;
BEGIN
 Writeln;
 Assign(t, inFileName);
 {$I-} Reset(t); {$I+}
 if IOResult <> 0 then begin
   WriteLn('Файл данных ',inFileName,' не найден. Работа прекращается');
   Halt(1)
 end;
 {Чтение и показ}
 for i:=1 to range do begin
   for j:=1 to range do
   begin
     Read(t, m[i,j]);
     Write(m[i,j]:8:2);
   end;
   WriteLn
 end;
 WriteLn;

 for i:=1 to range do
 begin
    A[i] := 0;
    for j:=1 to range do A[i] := A[i] + m[i,j];
 end;

 {Показ до перестановки}
 for i:=1 to range do Write(A[i]:8:2);
 WriteLn;
 {Меняем и показываем}
 buf:=A[1]; A[1] := A[range]; A[range] := buf;
 WriteLn('После перестановки');
 for i:=1 to range do Write(A[i]:8:2);
 WriteLn;

END.

Leave a Comment

+ 59 = 60