Bonjour,
Je travaille actuellement sur un projet ou je dois créer une grammaire à partir de laquelle je dois générer des phrases.
Donc j'ai choisi Prolog mais là j'ai un petit soucis de débutant...
Mon problème est le suivant :
J'ai une adresse de départ, et la taille de cette adresse.
Je veux générer toutes les adresses possibles de facon à quelles soient comprises dans l'intervalle (adresseDebut+taille).
Exemple :
AdresseDebut=1000
Size=500
Par exemple ça générera Adresse=1000, Size = 500 ou bien Adresse = 1200, Size = 50 etc..
Donc j'ai fais ça en SWI-Prolog :
Mais ça ne marche pas j'ai l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 /* Prédicat pour regionAdress et RegionOp.Size */ addrDebut(1000). size(X) :- X>0, X<100. //Le 100 correspond à la size phraseAddr(X,Y) :- addrDebut(X), size(Y). X+Y<1100.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 ?- phraseAddr(1000,50). true. ?- findall( (X,Y), phraseAddr(X,Y), R). ERROR: >/2: Arguments are not sufficiently instantiated ?-
Partager