Другие языки программирования и технологии

сортировка в паскале

есть двумерный массив. его надо отсортировать методом слияния (ну или хотя бы чем-нибудь похожим, хотя желательно именно слиянием). я уже совсем запуталась с ним. напишите как правильно это сделать часть программы: for i:=1 to N-1 do begin for j:=1 to N do begin if k1[i,j]< k1[i+1,j] then begin s[1,1]:= k1[i,j]; k1[i,j]:=k1[i+1,j]; k1[i+1,j]:=s[1,1]; end; write (k1[i,j]:4:1); end; writeln; end; PS массив вещественного типа. Объясните мне что надо изменить, чтобы сортировка была все таки слиянием и уже сортировала в конце концов. PS Если знаете в чем дело, помогите, напишите как должно быть, если не знаете, не лезьте со ссылками на различные сайты. я их видела сотни раз. они мне не помогли. нужно нормальное объяснение!.
Неправда, что самый простой метод - пузырька!
Самый простой метод "Гномья сортировка":
Это метод, которым садовый гном сортирует линию цветочных горшков. По существу он смотрит на следующий и предыдущий садовые горшки: если они в правильном порядке, он шагает на один горшок вперёд, иначе он меняет их местами и шагает на один горшок назад. Граничные условия: если нет предыдущего горшка, он шагает вперёд; если нет следующего горшка, он закончил.
Реализация такой сортировки проще и понятнее даже метода пузырька!

Вот сортировка методом слияния для массива целых чисел (переделать на действительные - только поменять тип массива и рандом) :
const
N = 40;
var
Mas0, Mas1 : array [1..N] of Integer;
Pos, Len, NomMas : Integer;
I1, I2, N1, N2 : Integer;
begin
Randomize;
WriteLn('Исходный массив: ');
for Pos := 1 to N do
begin
Mas0[Pos] := Random(100);
Write(Mas0[Pos]:3);
end;
WriteLn;

Len := 1; { начальная длина }
NomMas := 0; { сначала из Mas0 в Mas1 }
while Len < N do
begin
if NomMas = 0 then { из Mas0 в Mas1 }
begin
Pos := 0;
while Pos + Len <= N do
begin
{ начальные и конечные значения отрезков }
Это начало!
А дальше никак.
Ограничение на количество символов!
Я бы в коментариях смог продолжить.
Но ты забыла разрешить комментарии.
СГ
Сергей Горковенко
93 110
Лучший ответ