Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program Laba7;
- {$APPTYPE CONSOLE}
- {$R *.res}
- Uses
- System.SysUtils;
- const
- Row = 10;
- Col = 7;
- var
- X: array[1..Row, 1..Col] of integer;
- Sum: array[1..Row] of integer;
- i, j, k, swap: integer;
- f: boolean;
- begin
- Randomize;
- for i := 1 to Row do
- for j := 1 to Col do
- X[i, j] := random(10);
- Write('ВВЕДЕННАЯ МАТРИЦА:');
- writeln;
- for i := 1 to Row do
- begin
- writeln;
- for j := 1 to Col do
- write(X[i, j]:3, ' ');
- end;
- writeln;
- writeln('---------------------------------------------');
- writeln;
- Write('ОТСОРТИРОВАННАЯ ПО УБЫВАНИЮ ЭЛЕМЕНТОВ СТРОК ');
- writeln;
- //сортировка пузырьком с флагом строк матрицы по неубываюнию элементов
- for i := 1 to Row do
- begin
- f := true;
- k := 1;
- while (k <= Col - 1) and F do
- begin
- F := false;
- for j := Col - 1 downto k do
- if X[i, j] < X[i, j + 1] then
- begin
- swap := X[i, j];
- X[i, j] := X[i, j + 1];
- X[i, j + 1] := swap;
- f := true;
- end;
- inc(k);
- end;
- end;
- for i := 1 to Row do
- begin
- writeln;
- for j := 1 to Col do
- write(X[i, j]:3, ' ');
- end;
- //нахождение суммы четных неотрицательных элементов каждой строки
- for i := 1 to Row do
- for j := 1 to Col do
- if (X[i, j] mod 2 = 0) and (X[i, j] > 0) then
- SUM[i] := SUM[i] + X[i, j];
- writeln;
- writeln;
- write('Сумма четных неотрицательных элементов строк:');
- writeln;
- writeln;
- {|-------------------------------------------------------------|}
- {|}for i := 1 to Row do {|} { }
- {|} write(SUM[i], ' '); {|} {--------}{ этого в коде не будет, для отладки}
- {|}writeln; {|} { }
- {|}writeln('---------------------------------------------'); {|}
- {|-------------------------------------------------------------|}
- //сортировка строк матрицы выбором по неубыванию суммы четных и неотрицательных элементов в соответствующих строках
- for k := 1 to Row - 1 do
- for i := 1 to Row - 1 do
- if Sum[i + 1] < Sum[i] then
- for j := 1 to Col do
- begin
- Swap := X[i + 1, j];
- X[i + 1, j] := X[i, j];
- X[i, j] := Swap;
- Swap := Sum[i];
- Sum[i] := Sum[i + 1];
- Sum[i + 1] := Swap;
- end;
- writeln;
- Write('ОТСОРТИРОВАННАЯ ПО СУММЕ ЧЕТНЫХ НЕОТРИЦАТЕЛЬНЫХ ЭЛЕМЕНТОВ В СТРОКЕ');
- writeln;
- for i := 1 to Row do
- begin
- writeln;
- for j := 1 to Col do
- write(X[i, j]:3, ' ');
- end;
- writeln;
- writeln;
- write('Сумма четных неотрицательных элементов строк');
- writeln;
- writeln;
- {|-------------------------------------------------------------|}
- {|}for i := 1 to Row do {|} { }
- {|} write(SUM[i], ' '); {|} {--------}{ этого в коде не будет, для отладки}
- {|}writeln; {|} { }
- {|}writeln('---------------------------------------------'); {|}
- {|-------------------------------------------------------------|}
- readln;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement