Программирование на языке Пролог для искусственного интеллекта


         

разбивается на два списка четырьмя


заданного списка на две части:

        ?- конк( L1, L2, [а, b, с] ).

        L1 = [ ]

        L2 = [а, b, c];


        L1 = [а]

        L2 = [b, с];


        L1 = [а, b]

        L2 = [c];


        L1 = [а, b, с]

        L2 = [ ];


        no

            (нет)

Список  [а, b, с]  разбивается на два списка четырьмя способами, и все они были обнаружены нашей программой при помощи механизма автоматического перебора.

Нашу программу можно также применить для поиска в списке комбинации элементов, отвечающей некоторому условию, задаваемому в виде шаблона или образца. Например, можно найти все месяцы, предшествующие данному, и все месяцы, следующие за ним, сформулировав такую цель:

        ?- конк( До, [май | После ],

                  [янв, фев, март, апр, май, июнь,

                        июль, авг, сент, окт, ноябрь, дек]).


        До = [янв, фев, март, апр]

        После = [июнь, июль, авг, сент, окт, ноябрь, дек].

Далее мы сможем найти месяц, непосредственно предшествующий маю, и месяц, непосредственно следующий за ним, задав вопрос:

        ?- конк( _, [Месяц1, май, Месяц2 | _ ],

                   [янв, февр, март, апр, май, июнь,

Содержание  Назад  Вперед





Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий