rendered paste bodydomains
R = real
S = symbol.
predicates
datavar(R,R,R,R)
cycle(R,R,R,R)
funcXY(R,R,S)
headliner
table.
goal
table.
clauses
table:-
datavar(Xo,Xn,Hx,Y),
headliner,
cycle(Xo,Xn,Hx,Y),!.
datavar(Xo,Xn,Hx,Y):-
write("Enter Xo: "), readreal(Xo),
write("Enter Xn: "), readreal(Xn),
write("Enter Hx: "), readreal(Hx),
write("Enter Y: "), readreal(Y).
headliner:-
write("--------------------\n"),
write("I X I Zone I\n"),
write("--------------------\n").
cycle(Xo,Xn,Hx,Y):-
Xo <= Xn , funcXY(Xo,Y,Str),
writef("I%5%2I%8I\n",Xo," ",Str),
X1 = Xo + Hx, cycle(X1,Hx,Xn,Y).
cycle(_,_,_,_):-
write("--------------------\n").
funcXY(Xo,Y,Str):-
Xo>=-1,Y>=0,abs(Xo)<=Y,Xo<=0,Y<=1,Str=" ins(-) ";
Xo>=-1,Y>=0,abs(Xo)>=Y,Xo<=0,Y<=1,Str=" ins(|) ";
Str=" not(z) ".