|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
22.10.2012, 18:19 | #1 |
Пользователь
Регистрация: 15.12.2010
Сообщений: 74
|
PROLOG 2.0. Составить меню блюд из продуктов
Добрый день, друзья.
Решили наши преподаватели заставить нас выучить сей чудо-язык за одну лабораторную работу. Да еще и версию 2.0, которая 1986 года. Скажу сразу, с Прологом и подобными ему никогда дела не имел, слишком уж они специфические. Если честно, то и нету ни малейшего желания это делать, поскольку работать с ним я не собираюсь. Есть задание - используя исходную базу продуктов, составить список блюд, которые можно приготовить их этих продуктов. Говорю сразу, нужна помощь, заключающаяся в написании сего, видимо, не слишком сложного для понимающего человека задания. Если не трудно - помогите, буду очень признателен. Надеюсь, вы отнесетесь с пониманием. Спасибо. |
22.10.2012, 18:33 | #2 | |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
Цитата:
главная трудность пролога в том, что он построен не на привычной логике (точнее, не на привычном ее выражении, которое легло в основу линейного программирования), а на логике предикатов. А без понимания хотя бы основ последней без толку соваться в пролог, однако, сомнения закрадываются, что Ваши недобрые преподаватели Вас вот так сразу в него и ткнули, без объяснений, что есть предикат и иже с ним.
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
|
|
22.10.2012, 18:37 | #3 | |
Пользователь
Регистрация: 15.12.2010
Сообщений: 74
|
Sciv,
Я все это понимаю, именно так нам и говорили, мол, тут мозги нужно перестроить. Но согласитесь, к чему мне перестраивать мозги ради одной лабораторной работы, если мне это совершенно никак не пригодится, кроме как для сдачи? Я бы с огромной радостью не совался в него, я просил-умолял разрешить написать эту же программу на плюсах или Java. Но, как аргументировала преподавательница, "я не могу с ним расстаться", и хоть ты ее стреляй. Я бы мог убить на него пару вечеров, разобраться во всем и сделать-таки эту лабораторную, но я не могу переступить через себя просто. Поймите меня правильно. Цитата:
Последний раз редактировалось RAZOR1703; 22.10.2012 в 18:40. |
|
22.10.2012, 19:22 | #4 |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Я сейчас пишу программу "Калинарная книга рецептов". Пишу на плюсах. Могу поделиться кое-каким опытом. Может как-то поможет (Lisp увы, не знаю). Вот XML-чик в котором храниться инфорация о рецептах и о продуктах.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
22.10.2012, 19:24 | #5 |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
Держите. Не знаю - то, что Вам надо или нет, но суть программы такая: вводите название блюда - Вам выдаются ингредиенты. Варианты названий смотрите в правой части предикатов product (поддерживаются рыба, борщ,салат и бутерброд)
Код:
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Последний раз редактировалось Sciv; 22.10.2012 в 20:23. |
22.10.2012, 19:58 | #6 |
Пользователь
Регистрация: 15.12.2010
Сообщений: 74
|
Smitt&Wesson
Хех, большое спасибо, конечно, но мне такого уровня кулинарная программа ни к чему. Мне нужна примитивная программулина. Sciv Спасибо, только мне наоборот нужно было. Я вот что-то попытался, но не совсем понимаю, что у меня в итоге вышло, как ни смешно. Принцип такой. Перечень продуктов я задал списком и привинтил этот список к каждому возможному блюду - салату, первому, второму и десерту. А вот дальше я, как говорится, брел во тьме по черновику, на котором мне попыталась объяснить мое задание преподавательница (которая, к слову, сама не особо понимает PROLOG). Как мне кажется, программа должна сопоставлять введенный список продуктов (question(A1, A2...) ) со списком каждого блюда и, в итоге, понять, что можно из этого всего составить. Код:
Последний раз редактировалось RAZOR1703; 22.10.2012 в 20:04. |
22.10.2012, 20:37 | #7 |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
Как-то Вы для начинающего слишком сложные структуры пролога схватили Я там свою прогу переделал немного, чтоб выдавало по заданному времени возможные блюда их ингредиенты.
Если хотите определять, в какие блюда входит введенный ингредиент - нужно так писать: Код:
Увы, вынужден признать, но настолько хорошо я пролог не помню
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
|
22.10.2012, 20:43 | #8 | |
Пользователь
Регистрация: 15.12.2010
Сообщений: 74
|
Sciv
Ну вот и сделайте выводы, как нас наши недобрые преподаватели тыкают Это вот то, что преподавательница мне сказала сделать. Цитата:
|
|
22.10.2012, 20:58 | #9 |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
Ну на примере моей проги (сорри, мне в ней проще ориентироваться сейчас) написать что-то типа:
Код:
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
|
22.10.2012, 21:18 | #10 |
Пользователь
Регистрация: 15.12.2010
Сообщений: 74
|
Sciv
Не совсем понял, если честно. Строку Код:
И что менять в выводе? |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Составить меню | Oleg34 | Помощь студентам | 7 | 09.01.2012 23:48 |
Технологии разработки програмных продуктов | zuba2517 | Помощь студентам | 1 | 10.11.2011 16:07 |
TComponent как элемент списка блюд | m91da | Помощь студентам | 1 | 25.11.2010 20:16 |
VB Помогите вывести названия блюд в элемент ListBox | talisman-ydachi | Помощь студентам | 2 | 10.10.2009 19:28 |
программа продуктов модульной структуры | 4ERRY | Паскаль, Turbo Pascal, PascalABC.NET | 12 | 06.12.2008 16:05 |