predica6

ricerca su rocce

 

/* predica6.pro */
/* carica programma ed esegue */
/* come con GOAL in modo diretto */
/* prova GOAL : roccia(X,Y,Z) */
nowarnings
include "A:/predi/rocce1.pro"
domains
W = integer
predicates
finestra
azione(W)
goal finestra,azione(1).
clauses
 finestra:-
 clearwindow,
 makewindow(1,5,1,"",1,1,20,70).
 
 azione(W):-
  W>0,!,
  roccia(X,Y,Z),
  write(X,"\t\t",Y,"\t",Z),nl,
  W1=W-1,
  sound(10,500),
  azione(W1).
  

/* rocce1.pro */
/* prova GOAL:roccia(X,Y,Z) */
/* prova GOAL:roccia(X,intrusiva,veneto) */
/* prova GOAL:roccia(X,effusiva,lazio)  */
domains
nome = symbol
predicates
roccia(nome,nome,nome)
clauses
roccia(granito,intrusiva,veneto).
roccia(diorite,intrusiva,veneto).
roccia(sienite,intrusiva,lazio).
roccia(gabbro,intrusiva,sicilia).
roccia(porfido,effusiva,lazio).
roccia(trachite,effusiva,veneto).
roccia(andesite,effusiva,lazio).
roccia(basalto,effusiva,trentino).