.


:




:

































 

 

 

 


(cut)




: (!) (fail). , .


1.

a(1,1). %(1)

b(2). %(2)

b(3). %(3)

c(2). %(4)

c(3). %(5)

d(4). %(6)

a(X,Y):-b(X),!,c(Y). %(7)

a(X,X):-d(X). %(8)

?- a(N,M).

!, : N=1,M=1; N=2,M=2; N=2,M=3; N=3,M=2; N=3,M=3; N=4,M=4. ( ! ), , (7) !, , .. b(X), a(X,Y) - (8), (7). c(Y) , !. : N=1,M=1; N=2,M=2; N=2,M=3.

A:- B, C, D,!, E, F.

E,F - , !, A - .

.

I. - , cut-fail , .

, not(P) :

not(P):- P,!,fail.

not(_):- true.

II. .

2, , . 1 factorial, 1, (.. 2).

2.

factorial(0, 1):-!. /* 0!=1 */

factorial(N,F):- N1 is N-1, factorial(N1, F1), F is N*F1.

III. .

,

sign(X,-1):- X < 0,!.

sign(X,0):- X = 0,!.

sign(X,1). [5] % X > 0.

4.1

?- factorial(3,F).

4.2

, (,) :

         
[158,164) [164,170) [170,176) [176,182) [182,188]

,

(2,R):- R >= 164, R < 170.

, . .

BAF-

BAF- (Backtrack After Fail - ).

fail . ,

A:- B,fail.

, B .

3.

a:- write(1).

a:- write(2).

b(X):- a,X=''.

c:- a.

d:- a,fail.

?-b(X).

?-c.

?-d.





:


: 2015-10-01; !; : 532 |


:

:

, , 1:10
==> ...

1694 - | 1627 -


© 2015-2024 lektsii.org - -

: 0.01 .