Помощь - Поиск - Пользователи - Календарь
Полная версия: (Паскаль)Сравнение сортировок. Массивы.
Форум «Всё о Паскале» > 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, только если выполняешь перестановку; а в сортировке выбором - ВСЕГДА. Подумай, как должно выглядеть условие для определения, действительно была перестановка или ты вместо элемента записываешь его же.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.