IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Prolog Discussion :

Problème du zèbre


Sujet :

Prolog

  1. #1
    Candidat au Club
    Inscrit en
    Janvier 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 7
    Points : 2
    Points
    2
    Par défaut Problème du zèbre
    Bonjour, voilà mon problème :
    énoncé :
    5 maisons de différentes couleurs sont habitées par des hommes de nationalités différentes, possédant chacun un animal différent, fumant des cigarettes de marques différentes et buvant des boissons différentes.


    Voici maintenant les différents indices connus et comment je les ai traduit :

    1. L'anglais vit dans la maison rouge.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nationalite(A|1,anglais), couleur(A|1,rouge)
    2. L'espagnol possède un chien.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nationalite(A|2,espagnol), animal(A|2,chien)
    3. Dans la maison verte, on boit du café.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    couleur(A|3,vert), boisson(A|3,cafe)
    4. L'ukrainien boit du thé.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nationalite(A|4,ukrainien), boisson(A|4,the)
    5. La maison verte est juste à droite de celle de couleur ivoire.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    position(A1|5,A2|5,Rep), couleur(A1|5,ivoire), couleur(A2|5,vert)
    6. Le fumeur de Winston élève des escargots.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cigarette(A|6,winston), animal(A|6,escargot)
    7. Dans la maison jaune on fume des kools.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    couleur(A|7,jaune), cigarette(A|7,kools)
    8. L'habitant de la maison du milieu boit du lait.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    milieu(A|8,Rep), boisson(A|8,lait)
    9. Le norvégien habite la première maison à gauche.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    premier(A|9,Rep), nationalite(A|9,norvegien)
    10. L'homme qui fume des chesterfield habite à côté de la maison du renard.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    voisin(A1|10,A2|10,Rep), cigarette(A1|10,chesterfield), animal(A2|10,renard)
    11. Dans la maison voisine de celle du cheval on fume des kools.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    voisin(A1|11,A2|11,Rep), cigarette(A1|11,kools), animal(A2|11,cheval)
    12. Le buveur de jus d'orange fume des lucky strike.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    boisson(A|12,jusdorange), cigarette(A|12,luckystrike)
    13. Le japonais fume des parliaments.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nationalite(A|13,japonais), cigarette(A|13,parliaments)
    14. Le norvégien habite à côté de la maison bleue.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    voisin(A1|14,A2|14,Rep), nationalite(A1|14,norvegien),
    couleur(A2|14,bleu)
    Pouvez-vous me dire si mes clauses conviennent ?

    Voici les définitions :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    /* position(A, B, L) <= A est avant B dans la liste L. 
     * Pour le problème du zèbre, nous considérons la première maison celle qui se trouve le plus à gauche.
     */
    position(A, B, [A, B, _C, _D, _E]).
    position(A, C, [A, _B, C, _D, _E]).
    position(A, D, [A, _B, _C, D, _E]).
    position(A, E, [A, _B, _C, _D, E]).
    position(B, C, [_A, B, C, _D, _E]).
    position(B, D, [_A, B, _C, D, _E]).
    position(B, E, [_A, B, _C, _D, E]).
    position(C, D, [_A, _B, C, D, _E]).
    position(C, E, [_A, _B, C, _D, E]).
    position(D, E, [_A, _B, _C, D, E]).
    /* voisin(A, B, L) <= A est le voisin de B dans la liste L. */
    voisin(A, B, [A, B, _C, _D, _E]).
    voisin(B, A, [A, B, _C, _D, _E]).
    voisin(B, C, [_A, B, C, _D, _E]).
    voisin(C, B, [_A, B, C, _D, _E]).
    voisin(C, D, [_A, _B, C, D, _E]).
    voisin(D, C, [_A, _B, C, D, _E]).
    voisin(D, E, [_A, _B, _C, D, E]).
    voisin(E, D, [_A, _B, _C, D, E]).
    /* premier(A, L) <= A est le premier élément de la liste L. */
    premier(A, [A, _B, _C, _D, _E]).
    /* milieu(C, L) <= C est l'élément du milieu de la liste L. */
    milieu(C, [_A, _B, C, _D, _E]).
    /* attribut(P, A) <= A est l'attribut du personnage P. */
    couleur(a(C, _N, _A, _G, _B), C).
    nationalite(a(_C, N, _A, _G, _B), N).
    animal(a(_C, _N, A, _G, _B), A).
    cigarette(a(_C, _N, _A, G, _B), G).
    boisson(a(_C, _N, _A, _G, B), B).
    Le programme n'a pas d'erreur quand je le lance mais il me sort qu'il n'y a aucune solution ... si vous souhaitez le programme en entier pour tester, faites le moi savoir. Merci beaucoup pour votre aide.

  2. #2
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    C'est le fameux problème d'Einstein il me semble.
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  3. #3
    Candidat au Club
    Inscrit en
    Janvier 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    oui je crois.
    Le but ici est de savoir qui boit de l'eau et qui a un zèbre.

  4. #4
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    J'ai un peu cherché et je n'ai rien trouvé de bien.
    Tu peux montrer ton code ?
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  5. #5
    Membre habitué
    Profil pro
    Enculeur de mouches
    Inscrit en
    Septembre 2003
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France, Creuse (Limousin)

    Informations professionnelles :
    Activité : Enculeur de mouches

    Informations forums :
    Inscription : Septembre 2003
    Messages : 133
    Points : 161
    Points
    161
    Par défaut
    Non, il y a une erreur : quand on te dis juste à droite tu traduit par position...
    Il faut écrire droite(A1|5,A2|5,Rep), couleur(A1|5,ivoire), couleur(A2|5,vert)
    par exemple et écrire le prédicat droite(A, B, Rep) (copié/collé d'une ligne / 2 du bloc voisin)...

    Sans voir plus de code, impossible de dire comment sont unifiées tes variables. Et le soucis c'est que je vois comment est géré ton opérateur | ... S'il reste des erreurs c'est p'têt là.
    Gaïa n'est pas une marchandise.

  6. #6
    Membre confirmé Avatar de billynirvana
    Homme Profil pro
    Architecte technique
    Inscrit en
    Décembre 2004
    Messages
    472
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 472
    Points : 552
    Points
    552
    Par défaut
    Voilà comme promis.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
     
    %- position(x, y, l)
    %- x se trouve avant y dans la liste l
     
    position(e1, e2, e1.e2.e3.e4.e5.nil)->;
    position(e1, e3, e1.e2.e3.e4.e5.nil)->;
    position(e1, e4, e1.e2.e3.e4.e5.nil)->;
    position(e1, e5, e1.e2.e3.e4.e5.nil)->;
    position(e2, e3, e1.e2.e3.e4.e5.nil)->;
    position(e2, e4, e1.e2.e3.e4.e5.nil)->;
    position(e2, e5, e1.e2.e3.e4.e5.nil)->;
    position(e3, e4, e1.e2.e3.e4.e5.nil)->;
    position(e3, e5, e1.e2.e3.e4.e5.nil)->;
    position(e4, e5, e1.e2.e3.e4.e5.nil)->;
     
     
    %- voisin(x, y, l)
    %- x est le voisin de y dans la liste l
     
    voisin(e1, e2, e1.e2.e3.e4.e5.nil)->;
    voisin(e2, e1, e1.e2.e3.e4.e5.nil)->;
    voisin(e2, e3, e1.e2.e3.e4.e5.nil)->;
    voisin(e3, e2, e1.e2.e3.e4.e5.nil)->;
    voisin(e3, e4, e1.e2.e3.e4.e5.nil)->;
    voisin(e4, e3, e1.e2.e3.e4.e5.nil)->;
    voisin(e4, e5, e1.e2.e3.e4.e5.nil)->;
    voisin(e5, e4, e1.e2.e3.e4.e5.nil)->;
     
     
    %- premier(x, l)
    %- x est le plus à gauche dans la liste l
    %- milieu(x, l)
    %- x est le milieu dans la liste l
     
    premier(e1, e1.e2.e3.e4.e5.nil)->;
    milieu(e3, e1.e2.e3.e4.e5.nil)->;
     
     
    %- donnee(type, d, l)
    %- unifie d avec une variable de la liste l en fonction du type
     
    donnee(homme, h, h.n.m.a.b.f.nil)->;
    donnee(nationalite, n, h.n.m.a.b.f.nil)->;
    donnee(maison, m, h.n.m.a.b.f.nil)->;
    donnee(animal, a, h.n.m.a.b.f.nil)->;
    donnee(boisson, b, h.n.m.a.b.f.nil)->;
    donnee(fumer, f, h.n.m.a.b.f.nil)->;
     
     
    %- element_de(x, l)
    %- Verifie si x est element d'une liste l
     
    element_de(x, x.l)->;
    element_de(x, y.l)->
    	element_de(x, l);
     
     
     
    %- 
    %- on se donne 5 personnes pour le problème:
    %- <h1.n1.m1.a1.b1.f1.nil>.<h2.n2.m2.a2.b2.f2.nil>.<h3.n3.m3.a3.b3.f3.nil>.<h4.n4.m4.a4.b4.f4.nil>.<h5.n5.m5.a5.b5.f5.nil>.nil
     
     
    probleme(l) ->
    	element_de(e1, l) %- 1. L'anglais vit dans la maison rouge.
    	donnee(nationalite, anglais, e1)
    	donnee(maison, rouge, e1)
     
    	element_de(e2, l) %- 2. L'espagnol possède un chien.
    	donnee(nationalite, espagnol, e2)
    	donnee(animal, chien, e2)
     
    	element_de(e3, l) %- 3. Dans la maison verte, on boit du café.
    	donnee(maison, verte, e3)
    	donnee(boisson, cafe, e3)
     
    	element_de(e4, l) %- 4. L'ukrainien boit du thé. 
    	donnee(nationalite, ukrainien, e4)
    	donnee(boisson, the, e4)
     
    	voisin(e5, e6, l) %- 5. La maison verte est juste à droite de celle de couleur ivoire.
    	donnee(maison, ivoire, e5)
    	donnee(maison, verte, e6)
     
    	element_de(e7, l) %- 6. Le fumeur de Winston élève des escargots. 
    	donnee(fumer, Winston, e7)
    	donnee(animal, escargots, e7)
     
    	element_de(e8, l) %- 7. Dans la maison jaune on fume des kools.
    	donnee(maison, jaune, e8)
    	donnee(fumer, Kools, e8)
     
    	milieu(e9, l) %- 8. L'habitant de la maison du milieu boit du lait.
    	donnee(boisson, lait, e9)
     
    	premier(e10, l) %- 9. Le norvégien habite la première maison à gauche. 
    	donnee(nationalite, norvegien, e10)
     
    	voisin(e11, e12, l) %- 10. L'homme qui fume des chesterfield habite à côté de la maison du renard.
    	donnee(fumer, chesterfield, e11)
    	donnee(animal, renard, e12)
     
    	voisin(e13, e14, l) %- 11. Dans la maison voisine de celle du cheval on fume des kools.
    	donnee(animal, cheval, e13)
    	donnee(fumer, Kools, e14)
     
    	element_de(e15, l) %- 12. Le buveur de jus d'orange fume des lucky strike. 
    	donnee(boisson, jus_orange, e15)
    	donnee(fumer, Lucky_Strike, e15)
     
     
    	element_de(e16, l) %- 13. Le japonais fume des parliaments.
    	donnee(nationalite, japonais, e16)
    	donnee(fumer, Parliaments, e16)
     
    	voisin(e17, e18, l) %- 14. Le norvégien habite à côté de la maison bleue.
    	donnee(nationalite, norvegien, e17)
    	donnee(maison, bleue, e18)
     
     
    	element_de(s_ol1, l)
    	donnee(boisson, eau, s_ol1)
    	donnee(nationalite, h_omme_qui_boit_de_l_eau, s_ol1)
    	outm("homme qui boit de l eau: ")
    	outl(h_omme_qui_boit_de_l_eau)
     
    	element_de(s_ol2, l)
    	donnee(animal, zebre, s_ol2)
    	donnee(nationalite, h_omme_qui_a_un_zebre, s_ol2)
    	outm("homme qui possede un zebre: ")
    	outl(h_omme_qui_a_un_zebre)
     
    	;
     
     
    /*
    probleme(<h1.n1.m1.a1.b1.f1.nil>.<h2.n2.m2.a2.b2.f2.nil>.<h3.n3.m3.a3.b3.f3.nil>.<h4.n4.m4.a4.b4.f4.nil>.<h5.n5.m5.a5.b5.f5.nil>.nil);
    homme qui boit de l eau: norvegien
    homme qui possede un zebre: japonais
    homme qui boit de l eau: norvegien
    homme qui possede un zebre: japonais
    > 
    */

    Par contre, il me trouve deux solutions identiques (ouf quand même! ). Je n'ai pas eu besoin du prédicat position. Je l'ai ajouté quand même dans mon programme comme tu as fais, mais ca n'a apporté aucune améliorations.

    Si tu trouves pourquoi, dis le moi.


    A+



    Edition du post:

    <h.n.m.a.b.f.nil>
    J'ai mis une variable inutile: h. Je viens de m'en rendre compte. vous pouvez la virer!

  7. #7
    Membre actif Avatar de scifire
    Inscrit en
    Juillet 2004
    Messages
    226
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 226
    Points : 245
    Points
    245
    Par défaut
    Bonsoir a tous
    Je suis un debutant et je dois resoudre le meme probleme du zebre.J'ai teste le code que vous avez ecris mais malheureusement j'ai pas pu le faire marche.Je crois que c'est moi qui fais pas les choses comme il faut.Donc je vous prie me donner quelques explications comment je peut faire marcher le code sous SWI Prolog. Si possible le code complet ?

    Merci d'avance pour votre aide
    Even the biggest journey, starts with a single step.

  8. #8
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Salut

    Voilà le code traduit en SWI Prolog
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    voisin(E1, E2, [E1, E2, E3, E4, E5]). 
    voisin(E2, E1, [E1, E2, E3, E4, E5]). 
    voisin(E2, E3, [E1, E2, E3, E4, E5]). 
    voisin(E3, E2, [E1, E2, E3, E4, E5]). 
    voisin(E3, E4, [E1, E2, E3, E4, E5]). 
    voisin(E4, E3, [E1, E2, E3, E4, E5]). 
    voisin(E4, E5, [E1, E2, E3, E4, E5]). 
    voisin(E5, E4, [E1, E2, E3, E4, E5]). 
     
    premier(E1, [E1, E2, E3, E4, E5]). 
    milieu(E3, [E1, E2, E3, E4, E5]). 
     
    donnee(homme, H, [H, N, M, A, B, F]).
    donnee(nationalite, N, [H, N, M, A, B, F]).
    donnee(maison, M, [H, N, M, A, B, F]).
    donnee(animal, A, [H, N, M, A, B, F]).
    donnee(boisson, B, [H, N, M, A, B, F]).
    donnee(fumer, F, [H, N, M, A, B, F]).
     
    element_de(X, L) :- member(X, L).
     
    probleme(L) :-
     element_de(E1, L),
      donnee(nationalite, anglais, E1),
      donnee(maison, rouge, E1),
     
     element_de(E2, L),
      donnee(nationalite, espagnol, E2),
      donnee(animal, chien, E2),
     
      element_de(E3, L),
      donnee(maison, verte, E3),
      donnee(boisson, cafe, E3),
     
      element_de(E4, L),
      donnee(nationalite, ukrainien, E4),
      donnee(boisson, the, E4),
     
      voisin(E5, E6, L),
      donnee(maison, ivoire, E5),
      donnee(maison, verte, E6),
     
      element_de(E7, L),
      donnee(fumer, winston, E7),
      donnee(animal, escargots, E7),
     
      element_de(E8, L),
      donnee(maison, jaune, E8),
      donnee(fumer, kools, E8),
     
      milieu(E9, L),
      donnee(boisson, lait, E9),
     
      premier(E10, L),
      donnee(nationalite, norvegien, E10),
     
      voisin(E11, E12, L),
      donnee(fumer, chersterfield, E11),
      donnee(animal, renard, E12),
     
      voisin(E13, E14, L),
      donnee(animal,cheval, E13),
      donnee(fumer, kools, E14),
     
      element_de(E15, L),
      donnee(boisson, jus_orange, E15),
      donnee(fumer, lucky_strike, E15),
     
      element_de(E16, L),
      donnee(nationalite, japonais, E16),
      donnee(fumer, parliaments, E16),
     
      voisin(E17, E18, L),
      donnee(nationalite, norvegien, E17),
      donnee(maison, bleue, E18),
     
     
      element_de(S_ol1, L),
      donnee(boisson, eau, S_ol1),
     
     
      element_de(S_ol2, L),
      donnee(animal, zebre, S_ol2).
     
     
    % appel par probleme( [[H1, N1, M1, A1, B1, F1], [H2, N2, M2, A2, B2, F2], [H3, N3, M3, A3, B3, F3], [H4, N4, M4, A4, B4, F4], [H5, N5, M5, A5, B5, F5]]).
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  9. #9
    Membre confirmé Avatar de billynirvana
    Homme Profil pro
    Architecte technique
    Inscrit en
    Décembre 2004
    Messages
    472
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 472
    Points : 552
    Points
    552
    Par défaut
    Tu es sûr qu'il marche?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
      element_de(s_ol1, l) 
       donnee(boisson, eau, s_ol1) 
       donnee(nationalite, h_omme_qui_boit_de_l_eau, s_ol1) 
       outm("homme qui boit de l eau: ") 
       outl(h_omme_qui_boit_de_l_eau) 
     
       element_de(s_ol2, l) 
       donnee(animal, zebre, s_ol2) 
       donnee(nationalite, h_omme_qui_a_un_zebre, s_ol2) 
       outm("homme qui possede un zebre: ") 
       outl(h_omme_qui_a_un_zebre)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
      element_de(S_ol1, L), 
      donnee(boisson, eau, S_ol1), 
     
     
      element_de(S_ol2, L), 
      donnee(animal, zebre, S_ol2).
    Je trouve qu'il manque des informations. Dans ton cas, il affiche quoi?

  10. #10
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Ouui, tu fais l'appel dans la fenetre prolog comme je l'ai indiqué : probleme([[....).
    Sinon, tu peux toujours remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    outm("homme qui boit de l eau: ") 
       outl(h_omme_qui_boit_de_l_eau)
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    write('homme qui boit de l''eau '), writeln(h_omme_qui_boit_de_l_eau),
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  11. #11
    Membre actif Avatar de scifire
    Inscrit en
    Juillet 2004
    Messages
    226
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 226
    Points : 245
    Points
    245
    Par défaut
    Ah gars vous etes super
    Mercie pour votre reponses et pour votre aide
    Even the biggest journey, starts with a single step.

Discussions similaires

  1. problème rs 232
    Par remy059 dans le forum Composants
    Réponses: 4
    Dernier message: 09/08/2006, 12h14
  2. [VB5] probleme rs 232
    Par moi214 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 28/05/2006, 22h25
  3. [Comm] Changer les Bauds dans une com RS-232
    Par philippe13 dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 27/01/2006, 10h08
  4. RS 232 envoyer des donnees
    Par psyko_flex dans le forum C
    Réponses: 2
    Dernier message: 22/11/2005, 18h49
  5. Aide sur la RS 232
    Par Andr0 dans le forum C
    Réponses: 5
    Dernier message: 12/04/2005, 13h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo