.


:




:

































 

 

 

 





 

4.1 year (All) All . , year (_,,_,_) . , . year ([ ,Y ]), , .

, . , , . , . .

, . 4.5.

/* 4.5 */

domains

list_season=season*

season=string

predicates

year (list_season)

print_list (list_season)

goal

year (L), print_list (L).

clauses

year ([ , , , ]).

print_list ([]).

print_list ([ |Y ]) :- write (X), nl, print_list (Y).

print_list () . , , , .

, , .

print_list ([]) :- L= [ |Y ], write (X), nl, print_list (Y).

, , , , 4.5.

4.5 , . . .

, 䳿 : , , ..

, , .

4.6, show_worker.

/* 4.6 */

domains

number,salary=integer

name=string

member=worker (name,salary)

list_worker=member*

predicates

office (number,list_worker)

print_list (list_worker)

show_workr

clauses

show_worker:- write ( -> ), readint (Otd), office (Otd,L), print_list (L), readchar (_).

office (101, [ worker (,500), worker (,300), worker (,200)]).

office (211,worker (, 400)]).

print_list ([]).

print_list ([ X | Y ]) :- write (X) ,nl, print_list (Y).

 

 

, . , . , ' R . , . ᒺ , ᒺ , ᒺ.

. member (R, L), R , a L . ֳ member (R, L) , R L. :

: R , R L.

: R , R L.

- :

member (R,L) :-L= [ H| ], H=R.

member (R,L) :- L= [ H| ], member (R,T).

ֳ L= [ H| ] , L . , , , . :

member (R, [ R |_ ]).

member (R, [ _ | ]) :- member (R, ).

(_) , , .

:

member (d, [ a,b,d,c ]).

, d , .

[ b,d,c ], : member (d, [ b,d,c ]). , .

member (d, [ d,c ]). , , , d . [ d,c ]. , .

member (d, [ a,b,c,e ]), , member (d, []). , .

ǒ . 璺 append (L1, L2, L3), L1 , L2 , (), a L3 , 璺. 璺 :

: L2 [] L2.

: L2 L1, L1.

:

ppend ([], L2, L2).

append (L1, L2, L3) :- L1= [ H| ], append (T, L2, X), L3= [ H|X ]

, , , , . :

append ([], L2, L2).

append ([ |L1 ], L2, [ |L3 ]) :- append (L1, L2, L3).

append ([ a,b,c ], [ d,e ], L) L= [ a,b,c,d,e ], append ([ a,b ], [ c ], [ a,c,d ]) .

, , . , , , , , :

Goal: append (X, [ |Y ], [ , , , , , ])

X= [ , , , ]

Y= [ , ]

. L delete (X, L, L1), L1 . :

: , .

: , .

delete (X, [ X | ], ).

delete (X, [ Y | T ], [ Y, T1 ]) :- delete (X, T, T1).

n- . :

: [ H| ] .

: N - [ H| ] (N -1)- .

term_in_list ([ | _ ] ,1,).

term_in_list ([ _ | ], N, X) :- M=N-1, term_in_list (T, M, X).

. :

: .

: [ H| ] .

list_len ([] ,0).

list_len ([ _|T ] ,Len) :- list_len (T,Len1), Len = Len1+1.

list_len . ' , .

 





:


: 2015-11-05; !; : 443 |


:

:

, .
==> ...

1800 - | 1570 -


© 2015-2024 lektsii.org - -

: 0.021 .