Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.02.2011, 19:06   #1
uzumaxy
 
Аватар для uzumaxy
 
Регистрация: 04.08.2009
Сообщений: 7
По умолчанию Счетчик перестановок

Доброго времени суток! Помогите пож. вставить счетчик в процедуры, которые реализуют сортировку массива методом Шелла и вставки(не получается у мя). Счетчик должен отображать количество шагов(перестановок) которые были выполнены во время сортировки. Код процедур привел ниже.
Заранее спасибо!

Код:
type
   DataItem = char;
   DataArray = array [1..80] of char;

procedure Shell(var item: DataArray; count:integer);
       const
         t = 5;
       var
         i, j, k, s, m: integer;
         h: array[1..t] of integer;
         x: DataItem;
       begin
         h[1]:=9; h[2]:=5; h[3]:=3; h[4]:=2; h[5]:=1;
         for m := 1 to t do
           begin

         k:=h[m];
         s:=-k;
         for i := k+1 to count do
         begin
           x := item[i];
           j := i-k;
           if s=0 then
           begin
             s := -k;
             s := s+1;
             item[s] := x;
           end;
           while (x<item[j]) and (j<count) do
             begin
               item[j+k] := item[j];
               j := j-k;
             end;
             item[j+k] := x;
           end;
         end;
     end; { end Shell sort }

procedure Inser(var item: DataArray; count:integer);
       var
         i, l, j: integer;
         x: DataItem;
       begin
         for i := 2 to count do
         begin
           x := item[i];
           j := i-1;
           while (x<item[j]) and (j>0) do
           begin
             item[j+1] := item[j];
             j := j-1;
           end;
           item[j+1] := x;

         end;
     end; { end Inser sort }
uzumaxy вне форума Ответить с цитированием
Старый 12.02.2011, 21:23   #2
uzumaxy
 
Аватар для uzumaxy
 
Регистрация: 04.08.2009
Сообщений: 7
По умолчанию

Так и не получается у меня. Все время нулевое значение...
uzumaxy вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Алгоритм перестановок ArtGhost Помощь студентам 2 19.10.2013 10:56
Сортировка перестановок C sharp WOWka777 C# (си шарп) 0 09.11.2010 22:20
Прога - Генерация перестановок DED_moroZ Помощь студентам 0 04.03.2010 15:37
Генератор перестановок cent Microsoft Office Excel 2 02.01.2009 11:09
генератор перестановок Narkotik Помощь студентам 4 26.11.2008 05:15