Неизвестно - Prolog

Здесь есть возможность читать онлайн «Неизвестно - Prolog» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Старинная литература, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Prolog: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Prolog»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Prolog — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Prolog», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

между( N1, N2, X) :-

N1 < N2,

HoвoeNl is N1 + 1,

между( HoвoeNl, N2, X).

3. 22

:- ор( 900, fx, если).

:- ор( 800, xfx, то).

:- ор( 700, xfx, иначе).

:- ор( 600, xfx, :=).

если Вел1 > Вел2 то Перем := Вел3

иначе ЧтоУгодно :-

Вел1 > Вел2,

Перем = Вел3.

если Вел1 > Вел2 то ЧтоУгодно

иначе Перем := Вел4 :-

Вел1 =< Вел2,

Перем = Вел4.

Глава 4

4. 1

(a) ?- семья(членсемьи( _, Фамилия, _, _ ), _, [ ]).

(b) ?- ребенок( членсемьи( Имя, Фамилия, _,

работает( _, _ ) )).

(c) семья(членсемьи( _, Фамилия, _, неработает),

членсемьи( _, _, _, работает( _, _ ) ),_ ).

(d) ?- семья( Муж, Жена, Дети),

датарождения( Муж, дата( _, _, Год1) ),

датарождения( Жена, дата( _, _, Год2) ),

( Год1 - Год2 >= 15;

Год2 - Год1 >= 15 ),

принадлежит( Ребенок, Дети).

4. 2

близнецы( Ребенок1, Ребенок2) :-

семья( _, _, Дети),

удалить( Ребенок1, Дети, ДругиеДети),

% Выделить первого ребенка

принадлежит( Ребенок2, ДругиеДети),

принадлежит( Ребенок1, Дата),

принадлежит( Ребенок2, Дата).

4. 3

n _элемент( 1, [X | L], X).

% X - первый элемент списка [X | L]

n _элемент( N, [Y | L], X) :-

% X - n-й элемент [Y | L]

N1 is N - 1,

n _элемент( N1, L, X).

4. 4

Входная цепочка укорачивается на каждом неспонтанном цикле, а укорачиваться бесконечно она не может.

4. 5

допускается( S, [ ], _ ) :-

конечное( S).

допускается( S, [X | Остальные], Макс_переходов) :-

Макс_переходов > 0,

переход( S, X, S1),

НовыйМакс is Макс_переходов - 1,

допускается( S1, Остальные, НовыйМакс).

допускается( S, Цепочка, Макс_переходов) :-

Макс_переходов > 0,

спонтанный( S, S1),

НовыйМакс is Макс_переходов - 1,

допускается( S1, Цепочка, НовыйМакс).

4. 7

(а) ходконя( X/Y, X1/Y1) :-

% Ход коня с поля X/Y на поле X1/Y1

( dxy( DX, DY);

% Расстояния по направлениям X и Y

dxy( DY, DX) ),

% Или расстояния по направлениям Y и X

X1 is X + DX,

% X1 расположен в пределах шахматной доски

надоске( X1),

Y1 is Y + DY,

% Y1 расположен в пределах шахматной доски

надоске( Y1).

dxy( 2, 1). % 2 поля вправо, 1 поле вперед

dxy( 2, -1). % 2 поля вправо, 1 поле назад

dxy( -2, 1). % 2 поля влево, 1 поле вперед

dxy( -2, -1). % 2 поля влево, 1 поле назад

надоске( Коорд) :-

% Координаты в пределах доски

0 < Коорд,

Коорд < 9.

(b) путьконя( [ Поле]). % Конь стоит на поле Поле

путьконя( [S1, S2 | Остальные] ) :-

ходконя( S1, S2),

путьконя( [S2 | Остальные]).

(c) ?- путьконя( [2/1, R, 5/4, S, Х/8] ).

Глава 5

5. 1

(a) X = 1;

X = 2

(b) X = 1;

Y = 1;

X = 1;

Y = 2;

X = 2;

Y = 1;

X = 2

Y = 2;

(c) X = 1;

Y = 1;

X = 1;

Y = 2;

5. 2

класс( Число, положительное) :-

Число > 0, !.

класс( 0, нуль) :- !.

класс( Число, отрицательное).

5. 3

разбить( [ ], [ ], [ ]).

разбить( [X | L], [X | L1], L2) :-

X >= 0, !,

разбить( L, L1, L2).

разбить( [X | L], L1, [X | L2]) .

разбить( L, L1, L2).

5. 4

принадлежит( Некто, Кандидаты),

not принадлежит( Некто, Исключенные)

5. 5

разность( [ ], _, [ ]).

разность( [X | L1], L2, L):-

принадлежит( X, L2), !,

разность( L1, L2, L).

разность( [X | L1], L2, [X | L]) :-

разность( L1, L2, L).

5. 6

унифицируемые( [ ], _, [ ]).

унифицируемые( [Первый | Остальные], Терм, Список) : -

not( Первый = Терм), !,

унифицируемые( Остальные, Терм, Список).

унифицируемые( [Первый | Остальные], Терм,

[Первый | Список] ) :-

унифицируемые( Остальные, Терм, Список).

Глава 6

6. 1

найтитерм( Терм) :-

% Пусть текущий входной поток - это файл f

read( Терм), !,

% Текущий терм из f сопоставим с Терм'ом?

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Prolog»

Представляем Вашему вниманию похожие книги на «Prolog» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Prolog»

Обсуждение, отзывы о книге «Prolog» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x