Je lis « Apprenez Prolog maintenant » et l'un de ses exercices que je ne l'ai pas pu me résoudre est la suivante:Solving puzzle logique Prolog
Il y a une rue avec trois maisons voisines tous ont une couleur différente de . Ils sont rouges, bleus, et verts. Les gens de différentes nationalités vivent dans les différentes maisons et ils ont tous un animal différent . Voici quelques faits à leur sujet :
* The Englishman lives in the red house. * The jaguar is the pet of the Spanish family. * The Japanese lives to the right of the snail keeper. * The snail keeper lives to the left of the blue house. Who keeps the zebra? Define a predicate zebra/1 that tells you the nationality of the owner
du zèbre.
Hint: Think of a representation for the houses and the street. Code
les quatre contraintes dans Prolog. membre et sous-liste pourrait être utile prédicats.
Des idées pour le coder sous Prolog? Merci.