Pràctiques Prolog Grans

 

Haureu de lliurar un document amb el codi i les explicacions que calguin, així com un disket amb la pràcticapresencialmentdurant tutories o en hora concertada.

Per accedir a 1ª convocatòria l’haureu de lliurar abans del dia de l’exàmen de 1ª convocatòria. Per accedir a 2ª convocatòria l’haureu de lliurar abans del dia de l’exàmen de 2ª convocatòria.

 

Individuals amb Visual Basic

1.  (3 punts) Feu una aplicació en Visual Basic que faci de “front-end” a un exercici dels que heu presentat com a pràctica petita.

 

Individuals a resoldre obligatòriament amb CLPFD

 

2.  (3 punts) Colorejat de Mapes

El problema del colorejat de mapes consisteix en escollir colors per als països d'un mapa de manera que com a molt es facin servir quatre colors diferents i no hi hagi dos països veïns amb el mateix color.

 

Agafeu un mapa d'Europa i colorejeu-lo amb blau, blanc, vermell i verd. (comenceu considerant només: Dinamarca, Bèlgica, França, Alemanya, Holanda i Luxemburg).

 

3.  (3 punts) Famílies nombroses

Suposem que en Ramon i en Lluís són els  caps de família de dues famílies veïnes i que per atzar resulta que les dues famílies tenen tres nenes i tres nens cadascuna. El fill més petit de la família d'en Lluís és una nena i la família d'en Ramon té una nena que té menys d'un any. Cap de les dues famílies te bessons, ni fills amb una diferencia d'edat menor d'un any. Totes les criatures tenen menys de 10 anys. A cada família la suma de les edats de les nenes és igual a la suma de les edats dels nens; de fet, la suma dels quadrats de les edats de les nenes és igual a la suma dels quadrats de les edats dels nens. A més, la suma de les edats de totes les criatures és 60.

 

De quines edats són les criatures de cada família?

Solució:

Fills d'en Lluís: nenes : 8 7 3, nens : 9 5 4

Fills d'en Ramon: nenes: 7 5 0, nens: 8 3 1

 

4.  (3 punts) Quadrat màgic

Un quadrat màgic és una matriu quadrada on la suma de les files i les columnes i les sumes de les diagonals principals són iguals. A més a més, els números del quadrat màgic són consecutius i comencen per 1.

Per exemple, un de costat 3:

8

3

4

1

5

9

6

7

2

Dóna un quadrat màgic de costat 5.

I per a qualsevol costat?

 

A resoldre entre dos usant CLPFD i Visual Basic

 

5.  (5+1 punts) Fer una pràctica de la 2 a la 4 i fer-li una aplicació Visual Basic que faci de “front-end”.

6.  (5+2 punts) Els horaris

Feu un programa en Prolog utilitzant CLPFD tal que, donades les assignatures que un alumne vol cursar i tots els horaris possibles d'aquestes, ens dongui quins són els grups que ha de cursar i a quines hores en funció de certs paràmetres. En concret, el programa ha de permetre maximitzar/minimitzar el nombre d'hores que es solapen, així com el nombre de dies que s'ha de venir i/o el nombre de tardes i/o el de matins.

 

L'entrada de dades es pot fer via fitxers o via interaccio amb el Visual Basic.