Liene Informatique
3 e année
Programmation Logique
TD1: Syntaxe - Programmes simples - Résolution
1 Syntaxe Prolog
Quelest letypedesobjetsdésignés parleshainesdearatèressuivantes?
1. X1GF
2. a
3. A
4. 1234
5. 1AZ
6. toto
7. T_iti
8. 1/3
9. 12.56
10. 12,56
11. titi
2 Modélisation logique
Modéliseren Prologlesrelations familiales: parent, ls, lle, enfant,mère,
père,grand-mére,grand-père,grand-parent,soeur,frère,ousin,ousine,tante
et onle.Compléterleprogrammeavelesfaitsreprésentésdanslagure.
Robert
Roger Romain
Rodolphe Romuald
Rodrigue
Roméo Roland
Robinson Rose
Rosaline Roxane
Rose-Marie
Rosalie
Juliette
3 Palindrome
Unpalindromeestunmotquipeutêtreludegauheàdroiteoudedroiteà
gauhedelamêmefaçon(exemple:Laval).Érireunprédiatpalidrome(+atom)
qui réussitsil'atomeest unpalidrome.Onpourrautiliserlesprédiats:
premCar(+atom,?variable) qui réussit si la variable ontient le premier
aratèredel'atome
derCar(+atom,?variable) quiréussit silavariable ontientledernier a-
ratèredel'atome
noyau(+atom,?variable)quiréussitsilavariableontientl'atomeamputé
desespremieretdernieraratères
atom_length(+atom,?variable)quiréussitsilavariableontientlenombre
dearatèresdel'atome.
Érire un programme Prolog qui permet de aluler les éléments de la
suitedeFibonai
Érire un programme Prolog qui permet de aluler la puissane d'un
nombre
5 Résolution
SoitleprogrammeProlog:
anetre(X,Y):-anetre(X,Z), parent(Z,Y).
anetre(X,Y):-parent(X,Y).
parent(a,b).
parent(b,).
parent(b,d).
Onposeommebut:anetre(X,).
1. Construirel'arbrederésolutionengendréparetterequête
2. Expliqueroùestleproblèmeet proposerunesolution