10 баллов. Нужно было написать код программы, которая продемонстрирует работу сортировки вставками. (Т.е. прочитать массив и затем выводить его после каждой вставки). Написала, вроде - бы хорошо работает. Но вот почему - то выводит одну и ту же строку по два раза...
type
array_type = array [1..1000] of int64;
procedure InsertSort(var a: array_type; n: int64);
var
i, j, l, s: integer;
begin
for i := 2 to n do
begin
l := a[i];
j := i - 1;
while (j >= 1) and (a[j] > l) do
begin
a[j + 1] := a[j];
j := j - 1;
end;
a[j + 1] := l;
for s := 1 to n do write(a[s], ' ');
writeln();
end;
end;
var
a: array_type;
i, n: int64;
begin
readln(n);
for i := 1 to n do read(a[i]);
InsertSort(a, n);
for i := 1 to n do write(a[i], ' ');
end.