Pascal. Массивы. Задача 19

Необходимо упорядочить элементы в нечетных строках матрицы по возрастанию, а в четных строках – по убыванию.

Решение:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
program arrays_19;
uses crt;
var i, j, k, p, ch, key1, key2: integer;
matr: array[1..10,1..10] of integer;
begin
clrscr; randomize;
writeln(‘Исходная матрица:’);
for i:=1 to 10 do begin
for j:=1 to 10 do begin
matr[i, j]:=random(10); {заполнение матрицы псевдослучайными числами}
write(matr[i, j]:3);
end; writeln;
end;
for i:=1 to 10 do begin
for j:=1 to 10 do begin
for k:=1 to 9 do begin
key2:=k;
ch:=matr[j, k];
if j mod 2 <> 0 then {если не четное, то выполнять… }
begin
if matr[j, key2]>matr[j, k+1] then key2:=k+1;
matr[j, k]:=matr[j, key2];
matr[j, key2]:=ch
end else { если четное, то выполнять…}
begin
if matr[j, key2]<matr[j, k+1] then key2:=k+1;
matr[j, k]:=matr[j, key2];
matr[j, key2]:=ch;
end; end; end; end;
writeln; write(‘Отсортированная матрица:’);
writeln;
for i:=1 to 10 do begin
for j:=1 to 10 do begin
write(matr[i, j]:3);
end; writeln; end;
end.
Рейтинг
( Пока оценок нет )
Загрузка ...