.


:




:

































 

 

 

 





. .

+.

-. .

*. .

/. .

**. .

//, .

mod. , .

, , . . , :

?- X = 1 + 2.

Prolog ""

X = 1 + 2

X = 3, . 1 + 2 Prolog, + , I 2 - . , Prolog . is. is , :

?- X is 1 + 2.

:

X = 3

, is. .

Prolog . , "/" . "/" , "//"- , a "mod" . ?- X is 5/2,

Y is /,

2 is 5 mod 2.

:

X = 2.5

Y = 2

= 1

is , , , . is , . (. 3.1) , -



I. Prolog


. . , +, -, *, div yfx, , ; , is S - 2 - 1

: X is (5 - 2) - 1

, Prolog , sin (X}, cos (;, atan(X), log (X), (X] .. is.

, . , , 271 37 10000:

?- 277 * 37 > 10000. yes

, ">", is, .

, born, . , 1980 1990 , :?- , Year), Year >= 1980,

Year =< 1990.

.

X > Y X Y

X < . X Y

X >= Y X .

X =< . X Y

X -: - Y. X Y .

X V Y. X Y .

, "-" "- -" ; , - X = Y X -:■= Y. X , X Y , X Y. . , X =: = Y , - . :?-1+2-:-2+1. yes

?- 1 + 2 = 2 + 1.

RQ

? - 1 + = + 2.

= 2

- 1

. , .

, X Y, , D, .


3. , ,



1. X Y , D X.

2. X < Y, D X Y - X

3. Y < X, , 2), X Y

, . , = 20 Y - 2, D = 5 .

Prolog, , , :

gcd(X, Y, D)

:

gcd{ , X, X). gcd{ X, Y, D):-

X < Y,

Yl is Y - X,

gcd(X, Yl, D). gcd(X, Y, D):-

Y < X,

gcd(S, X, D).

, : XI is - Y,

gcd [ XI, Y, D)

, . ; , . length; List, n)

List N . , , .

1. , 0.

2. , List = [Head | Tail]; 1 Tail.

:

length([],0).

length([_ | Tail], M):-

length Tail, N1),

N is 1 + HI.

length :?- lengthf [a,b, tcdi,ei, ).

N = 4

, length , , . , Ml , : N is 1 + Ml

is , , .



I.


, length is. .

lengthl([],0).

lengthlt [_ I Tail], N}:-

lengthK Tail, N1},

N= 1 + HI.

?- lengthK |a,b, [c,d],e], ).

: = l+(l+(l+(l+0))}.

, , . , length, lengthl , :

length! ([_ | Tail], N):-

- 1 + Ml,

lengthl(Tail, N1).

lengthl , . , : lengthK [_ | Tail}, 1 + N):-

lengthK Tail, H). . lengthl , .

?- lengthK [a,b,c], ), Length is N. N = 1 + [1+(1 + 0)) Length = 3

, , length . , .

.

is. , +, -, *,/, div mod, .

.

, <, =< .. .

3.16.

max! X, Y, .)

, , X Y.

3.17.

maxlistf List, Max)

, List.

3.18.

eoalistl List, Sura)


3, , ,



, Sum List.

3.19.

orderedt List)

, List , ordered ([1,5,6,6,9,12]}.

3.20.
subsuiM Set, sum, SubSet)

, Set , SubSet ,

Subset Sum, :

7- subsum? [1,2,5,3,2], S, Sub).

Sub - [1,2,2];

Sub = [2,3];

Sub - [ 5 ];

3.21.

between(N1, N2, X)

Ml N2 X, N1 =< X =< N2.

3.22. "if, "then", "else" ": = " ,
:

if X > Y then Z:= X else Z:= Y

, "if . "if, "if-then-else" : if vail > Val2 then Var:= Val3 else Var:= Val4

Va Val2, Val3 Vai4 ( , ), a Var . "if : Vail , Val2, Var Val3, Val4. .

?- = 2, Y = 3,

Val2 is 2*X,

val<3 is 4*X,

if > Val2 then Z: = Y else Z: = Val4,

if Z > 5 then :- 1 else W:= 0.

X - 2

Y = 3

z =

1

Vcii 2 = 4

Veil 4 = a

. , , . Prolog .

, , : -

96 I. Prolog


 


, , , , .

. .

■ , , .

■ , - ; , .

. is () : <, =< ..

■ :

 

, , ;

;

, ;

, ;

;

.


3. , ,







:


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


:

:

- , .
==> ...

1672 - | 1495 -


© 2015-2024 lektsii.org - -

: 0.029 .