Nov 21, 2024

Wiki

Python

Aide

edit SideBar

Search

Jeux


Les mots croisés.

Suivent six mots anglais : abalone, abandon, anagram, connect, elegant, enhance. On cherche à les arranger à la manière d'un mot croisé comme sur la figure ci-dessous

Pour cela on propose la base de connaissances suivante :

  word(abalone,a,b,a,l,o,n,e).
  word(abandon,a,b,a,n,d,o,n).
  word(enhance,e,n,h,a,n,c,e).
  word(anagram,a,n,a,g,r,a,m).
  word(connect,c,o,n,n,e,c,t).
  word(elegant,e,l,e,g,a,n,t).

Définir un prédicat crosswd à 6 arguments qui donne le résultat. Les trois premiers arguments seront les mots verticaux, les trois derniers seront les mots horizontaux.

Solution : ici

Les six pions

Trois pions blancs et trois pions noirs sont alignés, séparés par une case libre, dans une ligne qui comporte sept cases !

Position initiale : BBB-NNN

A chaque coup, une seule des quatre actions suivantes est possible :

  • Glissement à droite d'un pion blanc, à condition que la case correspondante soit libre. Par exemple :

BBB-NNN -> BB-BNNN

  • Glissement à gauche d'un pion noir, à condition que la case correspondante soit libre. Par exemple :

BBB-NNN -> BBBN-NN

  • Saut d'un pion blanc par-dessus un point noir, vers la droite (à condition que la case correspondante soit libre) :

BBBN-NN -> BB-NBNN

  • Saut d'un pion noir par-dessus un point blanc, vers la gauche (à condition que la case correspondante soit libre) :

BB-BNNN -> BBNB-NN

Ecrire un programme Prolog qui permet de passer de la configuration initiale à la configuration suivante :

NNN-BBB

en affichant toutes les positions intermédiaires.


Vous avez suffisamment cherché, sans trouver ?

  • Indices : ici
  • Solution : ici

Les tours de Hanoï

Le problème du cavalier d'Euler

Vous trouverez un autre exemple de résolution, sur le célèbre problème du cavalier d'Euler, sur le site commentcamarche.net.

Page Actions

Recent Changes

Group & Page

Back Links