Главная страница
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.02 c
4-1130921832
Still Swamp
2005-11-02 11:57
2006.01.08
Как соорудить окошко типа PopUp


2-1134752863
fast2
2005-12-16 20:07
2006.01.08
Как сделать, чтоб программа была без формы?


4-1130670520
Максим
2005-10-30 14:08
2006.01.08
Слежение за процессами


14-1134463904
Иван Шихалев
2005-12-13 11:51
2006.01.08
Смайлы для Миранды


4-1131038926
BURN
2005-11-03 20:28
2006.01.08
Смена Mac адреса