liste6
tasto:- makewindow(3,3,2,"",20,60,3,15), write("premi enter"), readchar(_),removewindow, gotowindow(1),clearwindow.
/* torna1.pro */
domains lintero=integer* predicates run preleva(lintero) clauses run:- preleva(Lista), write(Lista,"\n"), fail. run.
preleva([1,2,3]). preleva([4,5,6]).
/* torna2.pro */
domains lintero=integer*
predicates run(lintero) leggi(lintero) preleva(lintero) clauses run(Lista):- preleva(Lista),!.
run(Lista):- leggi(Lista).
preleva([1,2,3]). preleva([4,5,6]).
leggi([7,8,9]). leggi([10,11,12]).
/* torna3.pro */
domains lintero=integer*
predicates run(lintero) leggi(lintero) preleva(lintero) clauses run(Lista):- preleva(Lista).
run(Lista):- leggi(Lista).
preleva([1,2,3]). preleva([4,5,6]).
leggi([7,8,9]). leggi([10,11,12]).
/* ritorna.pro */ /* attivazione di FAIL e CUT ! */ /* goal:azione senza FAIL */ /* goal:azione1 con FAIL */ /* goal:azione2 con FAIL CUT rosso */ /* goal:azione3 con CUT rosso FAIL */ /* goal:azione4 con CUT rosso */
nowarnings domains listainteri = integer*
predicates preleva(listainteri) azione azione1 azione2 azione3 azione4 clauses
azione:- preleva(Lista), write(Lista,"\n").
azione1:- preleva(Lista), write(Lista,"\n"),fail.
azione2:- preleva(Lista), write(Lista,"\n"),fail;!.
azione3:- preleva(Lista),!, write(Lista,"\n"),fail.
azione4:- preleva(Lista),!, write(Lista,"\n").
preleva([1,2,3]). preleva([4,5,6]). preleva([7,8,9]).