Цитата:
Сообщение от Натуся
1. В данной последовательности целых чисел переставить члены так, чтобы отрицательные нечетные числа шли в порядке возрастания в конце массива.
|
Пожалуйста:
Код:
Const
N=20;
Var
A,B,C:Array[1..N] of Integer;
P,Q,i,j:Byte;
D:Integer;
Begin
Randomize;
P:=0;
Q:=0;
Writeln('Initial array:');
for i:=1 to N do
begin
A[i]:=-50+Random(100);
Write(A[i]:4);
if (A[i]<0) and ((Abs(A[i]) mod 2)=1) then
begin
Inc(Q);
C[Q]:=A[i];
end
else
begin
Inc(P);
B[P]:=A[i];
end;
end;
Writeln;
Writeln;
for i:=1 to Q-1 do
for j:=1 to Q-i do
if C[j]>C[j+1] then
begin
D:=C[j];
C[j]:=C[j+1];
C[j+1]:=D;
end;
for i:=1 to P do
A[i]:=B[i];
for i:=1 to Q do
A[i+P]:=C[i];
Writeln('New array:');
for i:=1 to N do Write(A[i]:4);
Readln;
End.
С оставшимися двумя глупейшими школьными задачками будьте любезны справиться самостоятельно.