Сортировка. Метод выбора.
Уровень A. Массив содержит четное количество элементов. Напишите программу, которая сортирует первую половину массива по возрастанию, а вторую – по убыванию. Каждый элемент должен остаться в «своей» половине.
Пример:
Массив: 5 3 4 2 1 6 3 2
После сортировки: 2 3 4 5 6 3 2 1
Помогите пожалуйста и (подробно,т.к я не понимаю) , срочно нужно. 20 баллов даю
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Помогите, пожалуйста. Pascal ABC.net.
Массив содержит четное количество элементов. Напишите программу, которая сортирует первую половину массива по возрастанию, а вторую – по убыванию. Каждый элемент должен остаться в «своей» половине.
Пример:
Массив:
5 3 4 2 1 6 3 2
После сортировки:
2 3 4 5 6 3 2 1
Написал программу, правильно сортирует левую часть (1-5 элементов), а правую часть ( 6-10) не сортирует. Исправьте, пожалуйста ошибки.
var mas: array[1..10] of integer; i, j, t,n: integer;
begin
randomize;
for i := 1 to 10 do mas[i] := random(100); <заполняем массив>
writeln(‘Массив:’);
<сортировка>
for i := 1 to 10 do write(mas[ i], ‘ ‘);
writeln(»);
for i := 1 to (10 div 2) — 1 do
for j := 1 to (10 div 2) — 1 do <внутренний>
if mas[j] > mas[j + 1] then begin <если один больше другого то меняем местами>
t := mas[j]; <временное хранилице>
mas[j] := mas[j + 1];
mas[j + 1] := t;
end;
write(‘Первая половина: ‘);
for i := 1 to 5 do write(mas[i],’ ‘);<вывод отсортированной части>
writeln(»);
for j := 6 to 10 — i do
if mas[j] > mas[j + 1] then begin
n := mas[j];
mas[j] := mas[j + 1];
mas[j + 1] := n;
end;
writeln;
writeln(‘Массив после сортировки: ‘);
for i := 6 to 10 do
write(mas[i], ‘ ‘);
Информатика 10 кл Паскаль Массив содержит четное количество элементов.Напишите программу,которая сортирует первую половину массива по возрастанию,а вторую по убыванию.Каждый элемент должен остаться в «своей» половину. Заранее спасибо;)
Const
N = 10;
Var
A:array[1..N] of integer;
i,j:integer;
Begin
Write(Исходный массив: );
For i:= 1 to N do
Begin
A[i]:=random(21)-10;
Write(A[i], )
End;
WriteLn;
Write(Отсортированный массив: );
For j:= 1 to N div 2 do
For i:= 1 to N div 2-1 do
if A[i]gt;A[i+1] then Swap(A[i],A[i+1]);
For j:= 1 to N div 2 do
For i:= N div 2 to N-1 do
if A[i]lt;A[i+1] then Swap(A[i],A[i+1]);