Дан двумерный массив размерностью 8х7, заполненный случайным образом. • Поменять местами средние

deisika7 deisika7    2   16.04.2019 23:00    8

Ответы
jest2 jest2  16.04.2019 23:00
USES Crt;
 VAR
   A:ARRAY[0..8,0..7] OF INTEGER;   A1:ARRAY[0..9,0..7] OF INTEGER;
   A2:ARRAY[0..8,0..7] OF INTEGER;
   I,J,K:BYTE;   PP:INTEGER;
 BEGIN
   ClrScr;   Randomize;
   { Заполнение двумерного массива случайным образом и вывод в виде прямоугольной матрицы }
   WriteLn(' Значения элементов двумерного массива');
   FOR I:=1 TO 8 DO Begin
     FOR J:=1 TO 7 DO Begin
       A[I,J]:=Random(15);   Write(A[I,J]:3);
     End;     WriteLn;
   End;   WriteLn;
   { 1. Поменять местами строки }
   WriteLn(' Средние строки поменялись местами с первой и последней');
   FOR J:=1 TO 7 DO Begin
     PP:=A[1,J]; A[1,J]:=A[4,J]; A[4,J]:=PP;
     PP:=A[5,J]; A[5,J]:=A[8,J]; A[8,J]:=PP;
   End;
   { Вывод измененного массива }
   FOR I:=1 TO 8 DO Begin
     FOR J:=1 TO 7 DO
       Write(A[I,J]:3);
      WriteLn;
   End;   ReadLn;
   { 2. Вставка }
   WriteLn(' Первая строка вставлена между средними строками');
   K:=0;
   FOR I:=1 TO 8 DO Begin
     Inc(K);
     FOR J:=1 TO 7 DO Begin
       A1[K,J]:=A[I,J];  Write(A1[K,J]:3);
     End;    WriteLn;
     IF I=4 THEN Begin
                   Inc(K);
                   FOR J:=1 TO 7 DO Begin
                     A1[K,J]:=A[1,J];   Write(A1[K,J]:3);
                   End;    WriteLn;
     End;
   End;   Writeln;   ReadLn;
   { 3. Удаление}
   WriteLn(' Столбцы, в которых первый элемент > последнего, удалены');
   K:=0;
   FOR J:=1 TO 7 DO
     IF A[1,J]<=A[8,J] THEN Begin
                              Inc(K);
                              FOR I:=1 TO 8 DO
                                A2[I,K]:=A[I,J];
     End;
   { Вывод измененного массива }
   FOR I:=1 TO 8 DO Begin
     FOR J:=1 TO K DO
       Write(A2[I,J]:3);
     WriteLn;
   End;   ReadLn;
   { 4. Замена }
   WriteLn(' Элементы первых трех столбцов заменены на их квадраты');
   FOR I:=1 TO 8 DO Begin
     FOR J:=1 TO 7 DO Begin
       IF J<=3 THEN A[I,J]:=Sqr(A[I,J]);   Write(A[I,J]:4);
     End;     WriteLn;
   End;
 End.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Другие предметы