Академический Документы
Профессиональный Документы
Культура Документы
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
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
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),
check(H1,H2):-
H1<>H2.
win(A,B,C):-
E=A+B+C,
E><15.
OUTPUT:
EXPERIMENT 10
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),
check(H1,H2):-
H1<>H2.
win(A,B,C):-
E=A+B+C,
E><15.
OUTPUT: