Вы находитесь на странице: 1из 14

EXPERIMENT 1

AIM: Write a Program to show “likes” – relationship.

PROGRAM & OUTPUT:

Files Edit Run Compile Options Setup


+---------------------- Editor ----------------------++-------- Dialog --------+
¦ Line 7 Col 1 C:\TURBOP~1.0\LAB1.PRO Inden¦¦X=coffee ¦
¦domains ¦¦1 Solution ¦
¦ram,mohan,tea,coffee=symbol ¦¦Goal: likes(X,tea) ¦
¦ ¦¦X=ram ¦
¦predicates ¦¦1 Solution ¦
¦likes(symbol,symbol). ¦¦Goal: likes(ram,tea) ¦
¦ ¦¦Yes ¦
¦clauses ¦¦Goal: likes(ram,coffee) ¦
¦likes(ram,tea). ¦¦No ¦
¦likes(mohan,coffee). ¦¦Goal: likes(mohan,tea) ¦
¦ ¦¦No ¦
¦ ¦¦Goal: likes(mohan,coffee¦
¦ ¦¦) ¦
¦ ¦¦Yes ¦
¦ ¦¦Goal: ¦
+----------------------------------------------------++------------------------+
+--------------- Message --------------++---------------- Trace ---------------+
¦Compiling C:\TURBOP~1.0\LAB1.PRO ¦¦ ¦
¦likes ¦¦ ¦
¦likes ¦¦ ¦
¦likes ¦¦ ¦
+--------------------------------------++--------------------------------------+
EXPERIMENT 2

AIM: Write a Program to show “studies” – relationship.

PROGRAM & OUTPUT:

Files Edit Run Compile Options Setup


+---------------------- Editor ----------------------++-------- Dialog --------+
¦ Line 1 Col 1 C:\TURBOP~1.0\FILE1.PRO Inde¦¦Goal: studies(rohit,X) ¦
¦domains ¦¦X=eighth ¦
¦srishti,rohit,prashant,honey,nitin=symbol ¦¦1 Solution ¦
¦eighth=symbol ¦¦Goal: studies(X,eighth) ¦
¦ ¦¦X=srishti ¦
¦predicates ¦¦X=rohit ¦
¦studies(symbol,symbol). ¦¦X=honey ¦
¦ ¦¦X=prashant ¦
¦clauses ¦¦X=nitin ¦
¦studies(srishti,eighth). ¦¦5 Solutions ¦
¦studies(rohit,eighth). ¦¦Goal: studies(srishti,X)¦
¦studies(honey,eighth). ¦¦X=eighth ¦
¦studies(prashant,eighth). ¦¦1 Solution ¦
¦studies(nitin,eighth). ¦¦Goal: ¦
¦ ¦¦ ¦
+----------------------------------------------------++------------------------+
+--------------- Message --------------++---------------- Trace ---------------+
¦Load C:\TURBOP~1.0\FILE1.PRO ¦¦ ¦
¦Compiling C:\TURBOP~1.0\FILE1.PRO ¦¦ ¦
¦studies ¦¦ ¦
¦studies ¦¦ ¦
+--------------------------------------++--------------------------------------+
EXPERIMENT 3

AIM: Write a Program to implement Factorial.

PROGRAM & OUTPUT:

Files Edit Run Compile Options Setup


+---------------------- Editor ----------------------++-------- Dialog --------+
¦ Line 10 Col 11 C:\DOCUME~1\STUDEN~1.EXC\DESK¦¦Goal: fact(3,A) ¦
¦ ¦¦A=6 ¦
¦predicates ¦¦1 Solution ¦
¦fact(n,F) ¦¦Goal: fact(5,A) ¦
¦ ¦¦A=120 ¦
¦clauses ¦¦1 Solution ¦
¦fact(1,1). ¦¦Goal: fact(7,A) ¦
¦fact(X,Y) ¦¦A=5040 ¦
¦if X>1 and ¦¦1 Solution ¦
¦X1=X-1 and ¦¦Goal: ¦
¦fact(X1,F1) and ¦¦ ¦
¦Y= (X*F1). ¦¦ ¦
¦ ¦¦ ¦
¦ ¦¦ ¦
¦ ¦¦ ¦
+----------------------------------------------------++------------------------+
+--------------- Message --------------++---------------- Trace ---------------+
¦fact ¦¦ ¦
¦Save WORK.PRO ¦¦ ¦
¦Save C:\DOCUME~1\STUDEN~1.EXC\DESKTOP\¦¦ ¦
¦TURBOP~1\FACTORIAL.PRO ¦¦ ¦
+--------------------------------------++--------------------------------------
EXPERIMENT 4

AIM: Write a Program to implement Family Relationships.

PROGRAM & OUTPUT:

Files Edit Run Compile Options Setup


+---------------------- Editor ----------------------++-------- Dialog --------+
¦ Line 5 Col 1 C:\DOCUME~1\STUDEN~1.EXC\DESK¦¦Goal: parent(chuky,A) ¦
¦domains ¦¦A=praful ¦
¦person=symbol. ¦¦A=hansa ¦
¦ ¦¦2 Solutions ¦
¦predicates ¦¦Goal: parent(A,babuji) ¦
¦male(person) ¦¦A=praful ¦
¦female(person) ¦¦1 Solution ¦
¦father(person,person) ¦¦Goal: mother(chuky,A) ¦
¦mother(person,person) ¦¦A=hansa ¦
¦parent(person,person) ¦¦1 Solution ¦
¦brother(person,person) ¦¦Goal: parent(chuky,A) ¦
¦sister(person,person) ¦¦A=praful ¦
¦ ¦¦A=hansa ¦
¦clauses ¦¦2 Solutions ¦
¦male(praful). ¦¦Goal: ¦
¦male(babuji). ¦+------------------------+
¦male(himanshu). ¦--- Trace ---------------+
¦male(jacky). ¦ ¦
¦ ¦ ¦
¦female(jaishree). ¦ ¦
¦female(hansa). ¦ ¦
¦female(parmindar). ¦-------------------------+
¦female(chuky). ¦
¦ ¦
¦father(praful,babuji). ¦
¦father(chuky,praful). ¦
¦mother(jacky,jaishree). ¦
¦mother(chuky,hansa). ¦
¦brother(chuky,jacky). ¦
¦brother(hansa,himanshu). ¦
¦sister(jacky,chuky). ¦
¦sister(himanshu,hansa). ¦
¦parent(X,Y) if father(X,Y). ¦
¦parent(X,Y) if mother(X,Y). ¦
+----------------------------------------------------+
EXPERIMENT 5

AIM: Write a Program to implement Water Jug Problem.

PROGRAM & OUTPUT:


EXPERIMENT 6

AIM: Write a Program to implement Head Tail Problem.

PROGRAM & OUTPUT:

Files Edit Run Compile Options Setup


+---------------------- Editor ----------------------++-------- Dialog --------+
¦ Line 8 Col 6 C:\DOCUME~1\STUDEN~1.EXC\DESK¦¦Goal: max([1,2,3],X) ¦
¦domains ¦¦X=3 ¦
¦integerlist=integer* ¦¦1 Solution ¦
¦ ¦¦Goal: max([23,45,89],Y) ¦
¦predicates ¦¦Y=89 ¦
¦max(integerlist,integer) ¦¦1 Solution ¦
¦ ¦¦Goal: max([5673,111,574]¦
¦clauses ¦¦,Z) ¦
¦max([X],X). ¦¦Z=5673 ¦
¦max([H|Tail],H):- max(Tail,Maxtail),H>Maxtail. ¦¦1 Solution ¦
¦max([H|Tail],Maxtail):- max(Tail,Maxtail),H<=Maxtail¦¦Goal: ¦
¦ ¦¦ ¦
¦ ¦¦ ¦
¦ ¦¦ ¦
¦ ¦¦ ¦
+----------------------------------------------------++------------------------+
+--------------- Message --------------++---------------- Trace ---------------+
¦max ¦¦ ¦
¦Compiling C:\DOCUME~1\STUDEN~1.EXC\DES¦¦ ¦
¦KTOP\TURBOP~1.0\LIST.PRO ¦¦ ¦
¦max ¦¦ ¦
+--------------------------------------++--------------------------------------+
EXPERIMENT 7

AIM: Write a Program to implement Tower of Hanoi.

PROGRAM:

domains
loc,left,right,middle=symbol
predicates
hanoi(integer)
move(integer,loc,loc,loc)
inform(loc,loc)
clauses
hanoi(N):-move(N,left,middle,right).
move(1,A,_,C):-
inform(A,C),!.
move(N,A,B,C):-
N1=N-1,
move(N1,A,B,C),
inform(A,B),
move(N1,C,A,B).
inform(Loc1,Loc2):-
write("Move disc from ", Loc1," to ", Loc2,"\n").

OUTPUT:
EXPERIMENT 8

AIM: Write a Program to implement Salesman Problem.

PROGRAM:

domains
town=symbol
dis=integer
predicates
road(town,town,dis)
route(town,town,dis)
clauses
road(delhi,gurgoan,20).
road(gurgoan,delhi,20).
road(gn,delhi,300).
road(delhi,gn,300).
road(gurgoan,gn,290).
road(gn,gurgoan,290).
route(Town1,Town2,Dist):-road(Town1,Town2,Dist).
route(Town1,Town2,Dist):-road(Town1,X,Dist1),
route(X,Town2,Dist2),
Dist=Dist1+Dist2,!.

OUTPUT:
EXPERIMENT 9

AIM: Write a Program to implement 8-Queen Problem.

PROGRAM:

domains
d=symbol
i=integer

predicates
play(d)
check(integer,integer)
win(integer,integer,integer)

clauses
play(d):-
write("When win occur execution terminate\n"),
write("Position in magic Square\n"),
write(" 8 | 3 | 4\n"),
write("-----------------\n"),
write(" 1 | 5 | 9\n"),
write("-----------------\n"),
write(" 6 | 7 | 2\n"),
write("Human 1 move: "),
readterm(i,H11),
write("Human 2 move: "),
readterm(i,H21),
check(H11,H21),

write("Human 1 move: "),


readterm(i,H12),
check(H11,H12),
check(H21,H12),

write("Human 2 move: "),


readterm(i,H22),
check(H11,H22),
check(H21,H22),
check(H12,H22),

write("Human 1 move: "),


readterm(i,H13),
check(H13,H11),
check(H13,H21),
check(H13,H12),
check(H13,H22),
win(H11,H12,H13),
write("Human 2 move: "),
readterm(i,H23),
check(H23,H11),
check(H23,H21),
check(H23,H12),
check(H23,H22),
check(H23,H13),
win(H21,H22,H23),

write("Human 1 move: "),


readterm(i,H14),
check(H14,H11),
check(H14,H21),
check(H14,H12),
check(H14,H22),
check(H14,H13),
check(H14,H23),
win(H14,H12,H13),
win(H11,H14,H13),
win(H11,H12,H14),

write("Human 2 move: "),


readterm(i,H24),
check(H24,H11),
check(H24,H21),
check(H24,H12),
check(H24,H22),
check(H24,H13),
check(H24,H23),
check(H24,H14),
win(H24,H22,H23),
win(H21,H24,H23),
win(H21,H22,H24),
write("Game Draw"),!.

check(H1,H2):-
H1<>H2.

win(A,B,C):-
E=A+B+C,
E><15.
OUTPUT:
EXPERIMENT 10

AIM: Write a Program to implement TIC-TAC-TOE.

PROGRAM:

domains
h=symbol
i=integer

predicates
play(h)
check(integer,integer)
win(integer,integer,integer)

clauses
play(h):-
write("When win occur execution terminate\n"),
write("Position in magic Square\n"),
write(" 8 | 3 | 4\n"),
write("-----------------\n"),
write(" 1 | 5 | 9\n"),
write("-----------------\n"),
write(" 6 | 7 | 2\n"),
write("Human 1 move: "),
readterm(i,H11),
write("Human 2 move: "),
readterm(i,H21),
check(H11,H21),

write("Human 1 move: "),


readterm(i,H12),
check(H11,H12),
check(H21,H12),

write("Human 2 move: "),


readterm(i,H22),
check(H11,H22),
check(H21,H22),
check(H12,H22),

write("Human 1 move: "),


readterm(i,H13),
check(H13,H11),
check(H13,H21),
check(H13,H12),
check(H13,H22),
win(H11,H12,H13),
write("Human 2 move: "),
readterm(i,H23),
check(H23,H11),
check(H23,H21),
check(H23,H12),
check(H23,H22),
check(H23,H13),
win(H21,H22,H23),

write("Human 1 move: "),


readterm(i,H14),
check(H14,H11),
check(H14,H21),
check(H14,H12),
check(H14,H22),
check(H14,H13),
check(H14,H23),
win(H14,H12,H13),
win(H11,H14,H13),
win(H11,H12,H14),

write("Human 2 move: "),


readterm(i,H24),
check(H24,H11),
check(H24,H21),
check(H24,H12),
check(H24,H22),
check(H24,H13),
check(H24,H23),
check(H24,H14),
win(H24,H22,H23),
win(H21,H24,H23),
win(H21,H22,H24),
write("Game Draw"),!.

check(H1,H2):-
H1<>H2.

win(A,B,C):-
E=A+B+C,
E><15.
OUTPUT:

Вам также может понравиться