В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
marksmanpyro
marksmanpyro
22.05.2020 12:57 •  Информатика

Составить программу заполнить массив из 500 элементов случайными числами в интервале [0..100]. отсортировать его по возрастанию двумя методом «пузырька» и методом «быстрой сортировки» . вывести на экран число перестановок элементов массива в том и в другом случае. массив выводить на экран не нужно.

Показать ответ
Ответ:
гульназ5623
гульназ5623
24.06.2020 15:51
Var a,i,j,b,p,p1:longint;
m:array[0..501] of longint;
procedure qsort(l,r:longint);
var q,w,i,j,p:longint;
begin
q:=m[(l+r) div 2];
repeat
while m[i]<q do inc(i);
while m[j]>q do dec(j);
if i<j then
begin
w:=m[i];
m[i]:=m[j];
m[j]:=w;
inc(i); dec(j);inc(p);
end;
if i=j then
begin
inc(i);dec(j);
end;
until i>j;
if i<r then qsort(i,r);
if j<l then qsort(l,j);
p1:=p;
end;
begin
for i:=1 to 500 do
m[i]:=random(100);
for i:=1 to 500 do
for j:=500 downto i+1 do
if m[j]<m[i] then
begin 
a:=m[j]; 
m[j]:=m[i]; 
m[i]:=a; 
inc(p);
end;
writeln(p);
qsort(1,500);
writeln(p1);
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота