Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Для новичков > Задача про обезьяну и бананы |
Автор: Красавишна 11.1.2009, 21:51 |
clauses step(monkey(under_banana, on_box, try_banana), under_banana, grasp, % схватить банан monkey(under_banana, on_box, has_banana), under_banana). step(monkey(HPos, on_floor, Want_banana), HPos, climb, % залезть на ящик monkey(HPos, on_box, Want_banana), HPos). step(monkey(HPos1, on_floor, Want_banana), HPos1, % передвинуть ящик move(HPos1,HPos2), % из HPos1 в HPos2 monkey(HPos2, on_floor,Want_banana), HPos2). step(monkey(HPos1, on_floor, Want_banana), Box_Pos, % перейти go(HPos1,HPos2), % из HPos1 в HPos2 monkey(HPos2, on_floor, Want_banana), Box_Pos). obtain(monkey(_, _, has_banana), _). % есть банан - завершить поиск obtain(Monkey1, Box1) :- step(Monkey1,Box1, % выполнить очередной шаг Step, Monkey2,Box2), obtain(Monkey2,Box2). % продолжить поиск goal(Monkey_Pos, Box_Pos) :-obtain(monkey (Monkey_Pos, on_floor, try_banana),Box_Pos). Здравствуйте, не могли бы вы помочь перевести на С++, я пролог не знаю, пожалуйста |
Автор: Фантом 11.1.2009, 22:21 |
Переводить что-то с декларативного языка на императивный - бессмысленное занятие. Пишите программу заново. |
Автор: Staxxx 12.1.2009, 23:59 |
Фантом прав. |