Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
семинар 4.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
168.96 Кб
Скачать

Допускается( 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] ).

24

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]