Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

pl:prolog:pllib:predecessor [2019/06/27 15:50] (aktualna)
Linia 1: Linia 1:
 +====== Predecessor ======
 +{{tag>​family recursion}}
 +===== Description =====
 +Four versions of the predecessor program.
 +
 +**Source**: ​ PROLOG programming for artificial intelligence,​ 3rd Edition, Harlow, 2001, ISBN 0-201-40375-7.
 +===== Download =====
 +Program source code: {{predecessor.pl}}
 +===== Listing =====
 +<code prolog>
 +% Figure 2.16   Four versions of the predecessor program.
 +
 +
 +% Four versions of the predecessor program
 +
 +% The original version
 +
 +pred1( X, Z)  :-
 +   ​parent( X, Z).
 +
 +pred1( X, Z)  :-
 +   ​parent( X, Y),
 +   ​pred1( Y, Z).
 +
 +% Variation a: swap clauses of the original version
 +
 +pred2( X, Z)  :-
 +   ​parent( X, Y),
 +   ​pred2( Y, Z).
 +
 +pred2( X, Z)  :-
 +   ​parent( X, Z).
 +
 +% Variation b: swap goals in second clause of the original version
 +
 +pred3( X, Z)  :-
 +   ​parent( X, Z).
 +
 +pred3( X, Z)  :-
 +   ​pred3( X, Y),
 +   ​parent( Y, Z).
 +
 +% Variation c: swap goals and clauses of the original version
 +
 +pred4( X, Z)  :-
 +   ​pred4( X, Y),
 +   ​parent( Y, Z).
 +
 +pred4( X, Z)  :-
 +   ​parent( X, Z).
 +
 +
 +
 +</​code>​
 +===== Comments =====
  
pl/prolog/pllib/predecessor.txt · ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0