Salta ai contenuti. | Salta alla navigazione

Strumenti personali

CLP 14 luglio 2015

Applicazioni di Intelligenza Artificiale - CLP

Prof. Marco Gavanelli

14 luglio 2015

Esercizio (8 punti)

I coniugi Brillante hanno cinque figli, che tengono fede al loro nome. Alle età di 4, 5, 6, 7 e 8 anni, Anna e i suoi fratelli mostrano un buon talento ciascuno in un campo diverso da quello degli altri.

Determinare l'età e il talento di ognuno dei figli, sapendo che:

  • Uno di loro suona bene il piano
  • Carla ha 4 anni e non è la Brillante matematica
  • Il mago del computer è di un anno più vecchio di Stefano
  • Il violinista ha 7 anni
  • Giovanna non è quella di 8 anni
  • All'età di 5 anni, Roberto è più giovane del Brillante bravo nel nuoto.

NOTA: il vincolo alldifferent definito nella libreria fd_global funziona soltanto con variabili con dominio numerico.

Ad esempio: [A,B,C] :: [a,b,c], fd_global:alldifferent([A,B,C]) fallisce sempre,

mentre [A,B,C] :: [1,2,3], fd_global:alldifferent([A,B,C]) funziona (in quanto i domini sono interi)

e [A,B,C] :: [a,b,c], fd:alldifferent([A,B,C]) funziona (in quanto si usa la versione nella libreria fd , che funziona anche se i domini sono simbolici).