Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.08;
Скачать: CL | DM;

Вниз

эврестический алгоритм   Найти похожие ветки 

 
Lokk   (2005-12-18 11:12) [0]

Народ подскажите плиз, есть алгоритм где имеется несколько проверок, проблема в том что при выполнении каждой последующей проверки условия надо заново проверять все предыдущие и к следующему пункту переходим только в том случае если все предыдущие удачны. если использовать конструкцию if ... then то как возвращатсья обратно?? может можно как-то по другому?


 
Lokk   (2005-12-18 11:29) [1]

никто не разбирается в эврестических алгоритмах?
я бы даже сказал что это простой полный перебор


 
Virgo_Style ©   (2005-12-18 12:07) [2]

Если религия запрещает пользоваться goto, то остаются циклы


 
Lokk   (2005-12-18 12:13) [3]

так вот и вопрос в этом и состоит...
какие циклы организовывать...
for??
или while
или
repeat
как алгоритм в котором одни if переделать в циклы? ничего на ум не приходит


 
Набережных С. ©   (2005-12-18 12:21) [4]


> Lokk   (18.12.05 11:29) [1]
> никто не разбирается в эврестических алгоритмах?
> я бы даже сказал что это простой полный перебор

Есть, конесно, вероятность, что я просто непроходимо глуп, но она все-таки не слишком велика, мне кажется. Но, так или иначе, я практически ничего не понял в [0]:(
Правда, у меня почему-то возникли ассоциации с конечным автоматом, может это - оно самое?

PS Меня всегда удивляло, как можно заниматься программированием, не умея формально формулировать собственные мысли, извините за тавталогию.


 
Lokk   (2005-12-18 12:28) [5]

вообщем суть такая, разрабатвыается система автоматического составления расписания, конечные методы из серии линейного программирования не подходят, поэтому используются эвристические методы полного перебора.
у меня четрые условия, при выполнении первого условия переходим ко второму, если второе условие не выполняется меняем значение одной переменной и проверяем первое условие и так четрые раза . Да, эта переменная во всех четырех условиях одна и та же


 
Anatoly Podgoretsky ©   (2005-12-18 12:31) [6]

Lokk   (18.12.05 12:28) [5]
По описанию похоже на машину состояний - конечный автомат.


 
Lokk   (2005-12-18 12:35) [7]

может быть...
так как сделать то?:))))


 
Набережных С. ©   (2005-12-18 13:05) [8]


> Lokk   (18.12.05 12:35) [7]
> может быть...
> так как сделать то?:))))

Видимо, что-то вроде этого:

Result:= false;
repeat
 SetNextValue;
 if Condition1 then
   if Condition2 then
     if Condition3 then
       if Condition4 then Result:= true;
until Result;

Только смотри, чтобы цикл не оказался бесконечным.


 
Lokk   (2005-12-18 13:11) [9]

видимо тогда надо придумать как обрабатывать зацикливание....то есть бесконечность, например, может так случится что преподаватель всегда занят а из цикла выйти надо....


 
Набережных С. ©   (2005-12-18 13:54) [10]


> Lokk   (18.12.05 13:11) [9]

Вот и придумай. Эта простейшая задача не только для гигантов мысли.



Страницы: 1 вся ветка

Текущий архив: 2006.01.08;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.018 c
11-1116458973
AK Delfin
2005-05-19 03:29
2006.01.08
Забавная ситуация с TKolImageList.Delete ()


2-1134909043
Bounty
2005-12-18 15:30
2006.01.08
WebBrowser


14-1133896573
@BraIN
2005-12-06 22:16
2006.01.08
Ура! Таки-упал жесткий диск :о)


2-1135084675
Bart27
2005-12-20 16:17
2006.01.08
Как такое осуществить?


2-1135153090
Barsky
2005-12-21 11:18
2006.01.08
Сортировка в запросе (ORDER)