Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
[gnu prolog]
Envoyé par: francoisp

salut,

délire du moment je veux me mettre a faire des petits scripts de logiques pour appliquer de la logique de boole, du tri et surtout pour tester les blocs de faits et contraintes pour tester des solutions (vraies ou fausses)...

google donne des tas de trucs pour bien démarrer et pour les experts mais rien entre les deux du coup j'ai beaucoup de mal.

pour l'instant j'ai fait ça par exemple :
**      la secretaire declare avoir vu un ingenieur dans le couloir
qui mene a la salle de conference
**      un coup de feu a ete tire dans la salle de conference
celui ci a ete entandu dans toues les pieces voisines
**      un ingenieur declare n'avoir rien entandu

but :
prouver que si la secretaire dit vrai l'ingenieur ment */

secretaire_dit_vrai.
/* supposition initialle secretaire dit vrai */
voisin(couloir,salle_de_conf).
lieu(coup_de_feu,salle_de_conf).
lieu(ingenieur,couloir) :- secretaire_dit_vrai.
ingenieur_ment :- entendu(ingenieur,coup_de_feu).
/* ingenieur_ments si à entendu l'ingenieur (coup_de_feu). */


entendu(Ind,Bruit) :- lieu(Ind,Piece1), lieu(Bruit,Piece2), voisin(Piece1,Piece2).

/* requette sera :
        ingenieur_ment. 
attendons le resultat */
ce qui donne :
Copyright (C) 1999-2007 Daniel Diaz
| ?- [enquette].
compiling /root/Documents/prolog/enquette.pl for byte code...
/root/Documents/prolog/enquette.pl compiled, 23 lines read - 1336 bytes written, 17 ms

yes
| ?- ingenieur_ment.

yes

ce qui est tres minimaliste

j'aimerai passer à l'étape suivante faire des choses plus complexe comme le problemes des huits reines sur l'echiquier...
ou resoudre le probleme du genre :
*y'a 5 sportif
*la medaille d'or
*la medaille d'argent pour jean
*paul est a cote de jean
*l'un fait du saut en longeur
*robert de la course à pied
*celui qui a le maillot rouge est blessé
*le medaille d'or c'est en boxe
*jean bois de l'eau
*....
qui est medaille de bronze ? ou ce genre de chosse a enonces complexes..

ou encore le coup du berger de la chevre du choux et du loup devant traverser la riviere sans que malheur n'arrive ni au choux ni à la chevre et que seule le berger + un élement peut traverser...

le coup de la riviere est des 20 missionnaires et 20 cannibales...

et tout ce qui est du meme style... en fait...


ce genre de choses....





des liens ou refs de livres à me proposer ? pour progresser sur ce domaine

merci



Poste le Saturday 28 July 2007 21:00:05
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
[gnu prolog]
Pour poser vos questions sur les scripts shell, le Perl, le C, etc... Attention : nous ne sommes pas des spécialistes du dev, ce forum est juste pour de petites aides ponctuelles concernant le développement et les outils de développement.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons