check_determ
/*
Questo è un programma di grafica,
che richiede una scheda colore CGA o EGA.
*/
database
radice2(real)
predicates
drago(real, integer, integer)
int_real(integer, real)
goal
R = sqrt(2.0),
assertz(radice2(R)),
graphics(1,2,112),
penpos(4500, 18000, 180),
drago(15000.0, 0, -1).
clauses
drago(L, A, Segno) :-
L > 150.0,
radice2(R),!,
L1 = L / R,
A1 = A + 45 * Segno, A2 = A - 45 * Segno,
!,drago(L1, A1, 1),!,drago(L1, A2, -1).
drago(L, A, _) :-
penpos(X, Y, _),
penpos(X, Y, A),
random(CR), C=CR*7+1, int_real(Co,C),
pencolor(Co),
int_real(Len, L),
forward(Len).
int_real(I, R) :-
I=R.
ritorna