• Aucun résultat trouvé

UE InfF4 : Contrôle Continu de Prolog

N/A
N/A
Protected

Academic year: 2022

Partager "UE InfF4 : Contrôle Continu de Prolog"

Copied!
3
0
0

Texte intégral

(1)

Licence MIASHS 2ème année – Contrôle Continu de Prolog Page 1 sur 3

Université Grenoble Alpes

U.F.R. Sciences de l’Homme et de la Société

L2 MIASHS Licence MASS 2ème année – Année 2018-2019

UE InfF4 : Contrôle Continu de Prolog

Durée : 1 h 00 - Documents autorisés, appareils électroniques interdits.

Répondez sur la copie dans les cases réservées à cet effet.

Nom : ______________________________ Prénom :_______________________________

Exercice 1 : fonctionnement de Prolog (7 points) On considère le programme Prolog suivant :

a(X):-b(X).

a(3).

a(Y):-b(X), Y is X*X.

b(X):-c(X), !, X>0.

b(X):-c(X), X<4.

c(3).

c(6).

a) Quelles sont toutes les solutions pour X à la requête a(X) ?

b) On supprime la coupure dans le prédicat b.

Quelles sont toutes les solutions à la requête a(X) ?

(2)

Licence MIASHS 2ème année – Contrôle Continu de Prolog Page 2 sur 3 c) On considère maintenant le programme suivant :

couleur(rouge).

couleur(vert).

couleur(bleu).

colorier(A,B,C):- couleur(A), couleur(B), couleur(C), A\==B, A\==C, B\==C.

Donnez toutes les solutions à la requête colorier(X,Y,Z) dans l’ordre où elles seront affichées par Prolog :

Exercice 2 : Requêtes Prolog et unification (4 points)

Pour chacune des requêtes Prolog suivantes, indiquez si elle réussit. Si oui, donnez la substitution résultant de l’unification (valeurs des variables).

a) X=3,f(g(X),Y)=f(Z,Z).

b) X=2*3, Y is 2*3.

c) X=3+5, Y is 3+X, Z is X.

d) X=3+5, Y is 3+5, X=:=Y.

e) f([x,y])=f([A]).

f) X=3+5, Y is 3+5, X=Y.

g) f([x,y])=f(Z).

h) f([g(x),y,z])=f([X,Y|Z]).

(3)

Licence MIASHS 2ème année – Contrôle Continu de Prolog Page 3 sur 3

Exercice 3 : Les petits gâteaux (3 points)

On considère le problème suivant :

« Un pâtissier a fait un kilogramme de petits gâteaux de plus de 10 g chacun. Il désire les ranger dans une boîte ; mais il s’aperçoit que s’il veut les mettre par rangées de deux, de trois, de quatre, de cinq ou de six, il lui en reste un à chaque fois. Combien a-t-il fait de petits gâteaux ? ».

a) Soit N le nombre de petits gâteaux faits par le pâtissier. Quelle est, d’après l’énoncé ci-dessus, la valeur maximale de N ?

b) Construire un prédicat petitsgateaux/1 qui détermine N.

Exercice 4 : Listes (3 points)

Ecrire le prédicat reunis/3 qui, étant donné deux listes, crée une troisième liste dont les éléments sont des paires contenant un élément de chaque liste, dans l'ordre. Si l'une des listes contient plus d'éléments que l'autre, ceux-ci sont ignorés.

?- reunis([a,b,c],[1,2,3,4,5],R).

R = [[a,1],[b,2],[c,3]]

Exercice 5 : Suppression (3 points)

Ecrire le prédicat supprimer/3 qui supprime d’une liste toutes les occurrences d’un élément donné :

?- supprimer(b,[a,c,b,d,b,b,e,f,b,a],L).

L = [a, c, d, e, f, a]

Références

Documents relatifs

[r]

[r]

Da una lettura a sfondo poliziesco del Nome della rosa di Umberto Eco, Il libro –inteso come testo e oggetto- sembra essere per eccellenza, il protagonista della storia gialla,

Une boule de masse m et de charge q, soumise au champ de pesanteur d’intensité g, est suspendue verticalement à un fil de longueur L. A un instant donné on applique une tension

nej tack, jag vill bara titta lite ja, jag letar efter en snygg tröja vilken storlek.

On considère une liste de lettres minuscules codée par une liste de doublets : le premier élément du doublet est un nombre d’occurrences, le second la lettre. a) Ecrire le

C’est donc, comme témoin que je décris ce que je voyais se passer autour de moi, dans nos quartiers, dans notre ville, ailleurs dans des endroits plus éloignés, là où le destin

Situation de découverte : Les notions de souplesse et de rigidité dans l’organisation du travail sont étudiées les unes par rapport aux autres : la polyvalence et la