Помощь - Поиск - Пользователи - Календарь
Полная версия: (Паскаль)Сравнение сортировок. Массивы.
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Ytr
Короче задание такое:
Надо сравнить 2 типа сортировок и выбрать какая лучше (выбираться долно по тому сколько раз какой метод перемещал переменные) но у меня беда со счетчиками( я сыплю в него набор чисел которые сразу упорядочены оно всеравно пишет что типо перебирало ... помогите а ?

Program SortCompare;
uses crt;
const n=15;
var a,b:array[1..n] of shortint;
i,j,c,r,m:shortint;
begin
clrscr;
r:=0;
writeln('Vvodite elementy: ');
for i:=1 to n do
begin
write('[',i,']: ');
readln(a[i]);
end;
writeln('Nachalniy array:');
for i:=1 to n do write(a[i],' ');
b:=a;
for i:=1 to n do
for j:=1 to n-1 do if b[j]>b[j+1] then
begin
r:=r+1;
c:=b[j];
b[j]:=b[j+1];
b[j+1]:=c;
end;
writeln;
writeln('Bubble sort:');
for i:=1 to n do write(b[i],' ');
writeln;
writeln('Peredelok = ',r);
b:=a;
r:=0;
writeln('Select sort:');
for i:=1 to n do begin
m:=i;
r:=r+1;
for j:=i to n do if b[j]<=b[m] then m:=j;
c:=b[i];
b[i]:=b[m];
b[m]:=c;
end;
for i:=1 to n do write(b[i],' ');
writeln;
writeln('Peredelok = ',r);
readln;
end.

unsure.gif
мисс_граффити
Смотри: в пузырьковой сортировке ты увеличиваешь r, только если выполняешь перестановку; а в сортировке выбором - ВСЕГДА. Подумай, как должно выглядеть условие для определения, действительно была перестановка или ты вместо элемента записываешь его же.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.