//PascalABC.NET версия 3.2, сборка 1389
//Если программа не запускается, то обновите версию
uses System.Linq;
begin
writeln('III');
var a := ReadArrInteger('Документы', ReadInteger('n=')).ToList;
writeln;
while a.Any() do
begin
write(a[0], ' ');
a.RemoveAt(0);
if not a.Any then break;
write(a.Last, ' ');
a.RemoveAt(a.Count - 1);
if not a.Any then break;
var n := 0;
if a.Count > 1 then n := a.Count div 2 - 1;
write(a[n], ' ');
a.RemoveAt(n);
end;
end.
Объяснение:
Программа:
Pascal:
const N = 7;
var
arr: array[1..N] of integer;
i, j: integer;
begin
for i := 1 to 7 do arr[i] := random(0, 100);
writeln(arr);
for j:=1 to N - 1 do
for i:=1 to N - j do
if arr[i] > arr[i+1] then
swap(arr[i], arr[i + 1]);
writeln(arr);
end.