Дан массив а(20) отсортировать в порядке убывания элементы стоящие на четных номерах
Дан массив а(20) отсортировать в порядке убывания элементы стоящие на четных номерах
Ответ(ы) на вопрос:
var a:array[1..20] of integer;
i,j,k,p:integer;
begin
for i:=1 to 20 do
read(a[i]);
for i:=1 to 19 do begin
k:=i;
if odd(i) then continue;
for j:=i to 20 do
if (a[k]
Вот программа по примитивной логике. Заводим доп.массив, переписываем в него четные эл-ты, сортируем его, отсортированные эл-ты вставляем назад в исходный массив.
var
i, j, p: integer;
a: array[1..20] of integer;
b: array[1..10] of integer;
begin
writeln('Исходный массив: ');
for i := 1 to 20 do
begin
a[i] := random(20) + 1;
write(a[i]:3)
end;
for i := 1 to 20 do
if i mod 2 = 0 then
begin
j := j + 1;
b[j] := a[i]
end;
writeln;
for i := 1 to 10 do
for j := 1 to 10 do
begin
if b[i] > b[j] then
begin
p := b[i];
b[i] := b[j];
b[j] := p
end
end;
for i := 1 to 10 do a[i * 2] := b[i];
writeln('Преобразованный массив: ');
for i := 1 to 20 do write(a[i]:3)
end.
Не нашли ответ?
Похожие вопросы