встав2( Дер, X, Деревья)

где Деревья - список, состоящий либо из одного, либо из трех аргументов:

        Деревья = [ НовДер], если встав( Дер, X, НовДер)

        Деревья = [ НДа, Мб, НДб],

        если встав( Дер, X, НДа, Мб, НДб)

Теперь отношение доб23 можно переопределить так:

        доб23( Д, X, Д1) :-

                встав( Д, X, Деревья),

                соединить( Деревья, Д1).

Отношение соединить формирует одно дерево Д1 из деревьев, находящихся в списке Деревья.

Упражнения

10. 1.    Определите отношение

        внутри( Эдем, Дер)

для поиска элемента Элем в 2-3 справочнике Дер.

Посмотреть ответ

10. 2.    Введите в программу рис. 10.6 изменения для устранения лишних возвратов (определите отношения встав2 и соединить).

%  Отображение 2-3 справочников

        отобр(Д) :-                                                                                                         15

            отобр( Д, 0).                                                                                             --

        отобр( nil, _ ).                                                                                            15

        отобр( л(А), Н) :-                                                                                        --

                tab( H), write( A), nl.                                                                               13

        отобр( в2( Д1, М, Д2), Н) :-                                                                  --

                H1 is H + 5                                                                                       13

                отобр( Д2, H1),                                                                               --

                tab( H), write( --), nl,                                                                               12

                tab( H), write( M), nl,                                                                           --

                tab( H), write( --), nl,                                                                         12

                отобр( Д1, H1).                                                                                         10

        отобр( в3( Д1, M2, Д2, М3, Д3), H) :-                                                        10

                H1 is H + 5                                                                                             --

               

Вы читаете Prolog
Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

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

Отметить Добавить цитату