![]() |
|
|
![]()
|
|
| Zainka88 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 2.4.2009 Репутация: нет Всего: нет |
Помогите решить задачку про волка, козу, капусту. Нужно перевезти на другой берег
кого-нибудь - мы сами выбираем, потом выбираем, кто придет следующий на этот берег и опять выбираем кого перевозить, и так в цикле на каждом шаге считаем потери, если есть (волк ест козу, коза ест капусту). На том берегу, всегда остается 2 - который был до этого и только что перевезенный. Я попробовала реализовать через базу данных, но у меня не совсем получается, можно через списки, но у самой тоже не получается...((( domains Koza,Kapusta,Volk,s=string sum=integer database - lev animals(s) database - prav animals1(s) predicates dialog na4alo open repeat goal na4alo. clauses repeat.repeat:-repeat. open:-consult("lev.dbo",lev). dialog:- repeat, write("Kogo vi hotite perevezti:"),nl, consult("lev.dbo",lev), readln(S), retract(animals(S),lev), assert(animals1(S),prav), write("Kto pridet sleduschej?"),nl, readln(X), assertz(animals(X)), save("lev.dbo",lev), save("prav.dbo",prav), write("Vi hotite prodolzhit? Y/N"),nl, readln(Z), Z="N",!. na4alo:-open,dialog. Но здесь надо дописать проверку, что типа коза капусту ест, волк - козу, цикл у меня повторяется до тех пора пока я сам не нажму стоп и считает потери на каждом шаге... Помогите плиз.... |
|||
|
||||
![]()
|
| Правила форума Prolog | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Void. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Prolog | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |