В массиве из 40-а элементов упорядочить
1-ые 20 элементов по возрастанию
2-ые 20 элементов по убыванию.
Массив одномерный
Надо использовать random(n)
var
a:array[1..10] of integer;
i, j, k:integer;
begin
for i:=1 to 10 do
readln(a[i]);
for i:=1 to 10 do
for j:=10 downto i do begin
if a[j-1]>a[j] then begin
k:=a[j-1]; a[j-1]:=a[j]; a[j]:=k;
end;
end;
for i:=1 to 10 do begin
write(a[i]:3);
writeln;
end;
end.
type
arrtype = array[1 .. 40] of integer;
Procedure Insert(Var ar: arrType; n: Integer; sort_by: boolean);
Var i, j, T: Integer;
Begin
For i := 1 To n Do Begin
T := ar[i];
j := Pred(i);
While (j > 0) and ((T < ar[j]) = sort_by) Do Begin
ar[Succ(j)] := ar[j]; Dec(j);
End;
ar[Succ(j)] := T;
End;
End;
var
a: arrtype;
i: integer;
begin
randomize;
for i := 1 to 40 do a[i] := random(100);
for i := 1 to 40 do begin
write(a[i]:4);
end;
writeln;
insert(a, 20, true);
insert(arrtype((@a[21])^), 20, false);
for i := 1 to 40 do begin
write(a[i]:4);
end;
end.
! | 1. Заголовок темы должен быть информативным. В противном случае тема удаляется ... |