Страницы

вторник, 2 июня 2015 г.

Перестановка элементов матрицы (Pascal)

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

Блок-схема

Блок-схема обработки массива

Текст программы:
uses crt;
var
   B : array [1..5,1..5] of Integer;
   i, j, temp : Integer;
begin
     clrscr;
     Randomize; {Инициализация генератора случайных чисел}
     {Заполнение массива случайными числами}
     for i:=1 to 5 do
         for j:=1 to 5 do
             B[i,j]:=Random(100);
     {Вывод массива на экран}
     WriteLn('Исходный массив');
     for i:=1 to 5 do
     begin
          for j:=1 to 5 do
              Write(B[i,j]:4);
          WriteLn
     end;
     {Обработка массива}
     for i:=1 to 5 do
     begin
          for j:=0 to 5 div 2 do
          begin
               temp:=B[i,j+1];
               B[i,j+1]:=B[i,5-j];
               B[i,5-j]:=temp;
          end
     end;
      { Вывод массива на экран }
     WriteLn('Измененный массив ');
     for i:=1 to 5 do
     begin
          for j:=1 to 5 do
              Write(B[i,j]:4);
          WriteLn
     end;
     ReadLn;
end.
Результат:


Результат обработки массива