Программа:
const n=10;
var
a,b:array[1..n] of integer;
i,j,k,t:integer;
begin
Randomize;
Writeln('Исходный массив:');
for i:=1 to n do begin
a[i]:=Random(20000)-10000;
Write(a[i],' ')
end;
Writeln;
k:=0;
for i:=1 to n do
if a[i] mod 2<>0 then
k:=k+1;
b[k]:=a[i];
Writeln('Новый массив:');
for i:=1 to k do Write(b[i],' ');
for i:=1 to k-1 do
for j:=1 to k-i do
if b[j]>b[j+1] then
begin t:=b[j]; b[j]:=b[j+1]; b[j+1]:=t end;
Writeln('Отсортированный массив:');
Writeln
end.
Пример:
Исходный массив:
-5957 -8875 -9986 -4442 5484 -961 -2406 -6143 -4810 -293
Новый массив:
-5957 -8875 -961 -6143 -293
Отсортированный массив:
-8875 -6143 -5957 -961 -293
##
var a := ArrRandom(10, -10000, 10000);
a.Println;
var b := a.Where(t -> t.IsOdd).Sorted.ToArray;
b.Println
Пример решения:
7241 4709 -8354 1398 -80 4112 -596 -7253 -1639 -3122
-7253 -1639 4709 7241
Программа:
const n=10;
var
a,b:array[1..n] of integer;
i,j,k,t:integer;
begin
Randomize;
Writeln('Исходный массив:');
for i:=1 to n do begin
a[i]:=Random(20000)-10000;
Write(a[i],' ')
end;
Writeln;
k:=0;
for i:=1 to n do
if a[i] mod 2<>0 then
begin
k:=k+1;
b[k]:=a[i];
end;
Writeln('Новый массив:');
for i:=1 to k do Write(b[i],' ');
Writeln;
for i:=1 to k-1 do
for j:=1 to k-i do
if b[j]>b[j+1] then
begin t:=b[j]; b[j]:=b[j+1]; b[j+1]:=t end;
Writeln('Отсортированный массив:');
for i:=1 to k do Write(b[i],' ');
Writeln
end.
Пример:
Исходный массив:
-5957 -8875 -9986 -4442 5484 -961 -2406 -6143 -4810 -293
Новый массив:
-5957 -8875 -961 -6143 -293
Отсортированный массив:
-8875 -6143 -5957 -961 -293
##
var a := ArrRandom(10, -10000, 10000);
a.Println;
var b := a.Where(t -> t.IsOdd).Sorted.ToArray;
b.Println
Пример решения:
7241 4709 -8354 1398 -80 4112 -596 -7253 -1639 -3122
-7253 -1639 4709 7241