Решение:
Program Sortirovka;
Type Matrix=array [1..6,1..7] of real;
Var a: Matrix;
R: Real;
k,i,j: integer;
Begin
for i:=1 to 6 do for j:=1 to 7 do a[i,j]:=1/3*i*i+j;
Writeln('Матрица A');
for i:=1 to 6 do begin for j:=1 to 7 do write(a[i,j]:6:3,' ');
Writeln; end; Writeln;
for i:=2 to 6 do for j:= 6 downto i do
if int(a[j+1,6])<int(a[j,6]) then
for k:= 1 to 7 do {Перестановка строк}
begin R:=a[j-1,k];
a[j-1,k]:=A[j,k];
a[j,k]:=R; end;
Writeln('Отсортированная матрица А имеет вид');
for i:=1 to 6 do begin for j:=1 to 7 do
write(a[i,j]:6:3,' '); writeln; end;
End.
Ответ.
Матрица A
1.333 2.333 3.333 4.333 5.333 6.333 7.333
2.333 3.333 4.333 5.333 6.333 7.333 8.333
4.000 5.000 6.000 7.000 8.000 9.000 10.000
6.333 7.333 8.333 9.333 10.333 11.333 12.333
9.333 10.333 11.333 12.333 13.333 14.333 15.333
13.000 14.000 15.000 16.000 17.000 18.000 19.000
Отсортированная матрица А имеет вид
13.000 14.000 15.000 16.000 17.000 18.000 19.000
9.333 10.333 11.333 12.333 13.333 14.333 15.333
6.333 7.333 8.333 9.333 10.333 11.333 12.333
4.000 5.000 6.000 7.000 8.000 9.000 10.000
2.333 3.333 4.333 5.333 6.333 7.333 8.333
1.333 2.333 3.333 4.333 5.333 6.333 7.333
Вывод: освоить на практике операции с одномерными и многомерными массивами.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.