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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.01.2010, 23:50   #11
antoha73
Пользователь
 
Регистрация: 20.12.2009
Сообщений: 14
По умолчанию

Вот кусок кода, в чем-то тут проблема...

Код:
i:=proekciya.tagpro-1; {i присваиваю кол-во элементов массива}

for indeks:=1 to i do TMPZakIndex[indeks] := indeks; {проинициализировал массив TMPZakIndex }


dosort:='';
for indeks:=1 to i do dosort:=dosort+inttostr(TMPZakIndex[indeks])+' ';
showmessage('Массив TMPOrder до сортировки: '+dosort);                 {Вывел для наглядности массив TMPOrder до сортировки}


for indeks:=1 to i do begin
    IndexMax := indeks;
     for j:=indeks+1 to i do
     if TMPOrder[j]>TMPOrder[IndexMax] then IndexMax := j;
      if indeks<>IndexMax then begin
      tmpVar := TMPOrder[IndexMax];
      TMPOrder[IndexMax] := TMPOrder[indeks];
      TMPOrder[indeks] := tmpVar;
      tmpVar := TMPZakIndex[IndexMax];
      TMPZakIndex[IndexMax] := TMPZakIndex[indeks];
      TMPZakIndex[indeks] := tmpVar;
    end;
end;


poslesort:='';
for indeks:=1 to i do poslesort:=poslesort+inttostr(TMPZakIndex[indeks])+' ';
showmessage('Массив TMPOrder после сортировки: '+poslesort);                  {Вывел для наглядности массив TMPOrder после сортировки-результат-он не отсортирован!}


poz_strok:='';
for indeks:=1 to i do begin
//poz_strok:=poz_strok+TMPZak[i];
poz_strok:=poz_strok+TMPZak[TmpZakIndex[indeks]]; {poz_strok в итоге должна содержать отсортированный массив TMPZak, но тут опять все не так (((} 
end;

Вот для наглядности, то что должно быть:

Последний раз редактировалось antoha73; 04.01.2010 в 11:20.
antoha73 вне форума Ответить с цитированием
Старый 04.01.2010, 17:55   #12
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Что ж Вы всё путаете... ;(
и себя и людей..
Код Ваш - РАБОЧИЙ!

смотрите в аттаче доказательство тому.


по поводу путаницы.
просто, как иллюстрация:
Цитата:
Код:
for indeks:=1 to i do dosort:=dosort+inttostr(TMPZakIndex[indeks])+' ';
showmessage('Массив TMPOrder до сортировки: '+dosort);                 
{Вывел для наглядности массив TMPOrder до сортировки}
так какой массив Вы выводите? TMPOrder ?!

моё мнение, что Вы не понимаете, что делает код,
и, соответственно, не можете его использовать... ;(
Вложения
Тип файла: rar Project_Exe.rar (153.4 Кб, 5 просмотров)
Тип файла: rar Sortirovka_Source.rar (1.9 Кб, 5 просмотров)

Последний раз редактировалось Serge_Bliznykov; 04.01.2010 в 17:58.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 04.01.2010, 23:14   #13
antoha73
Пользователь
 
Регистрация: 20.12.2009
Сообщений: 14
По умолчанию

Код:
for indeks:=1 to i do dosort:=dosort+inttostr(TMPZakIndex[indeks])+' ';
showmessage('Массив TMPOrder до сортировки: '+dosort);                 
{Вывел для наглядности массив TMPOrder до сортировки}
Тут я проглядел, конечно-там нужно TMPOrder а не TMPZakIndex, извиняюсь, сортировка работает, проблема там совсем в другом...
СПАСИБО!!!!
antoha73 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Слияние двух массивов в Delphi sauron99 Помощь студентам 17 03.04.2016 09:37
Обращение к таблице одновременно двух AdoQuery Joe_Tribbiani БД в Delphi 1 01.06.2009 17:27
Деление элементов двух массивов при зад. условиях Leona_L Microsoft Office Excel 6 03.04.2009 20:52
Перенести общие елементы двух массивов в другой. leshax Общие вопросы C/C++ 1 04.02.2009 20:57
Выбрать из двух массивов совпадение. *Иван* Microsoft Office Excel 7 22.11.2007 21:10