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

Algorithmes et structures de données Discussion :

Problème de logique


Sujet :

Algorithmes et structures de données

  1. #1
    Membre habitué

    Inscrit en
    Avril 2004
    Messages
    646
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 646
    Points : 145
    Points
    145
    Par défaut Problème de logique
    Bonjour,

    J'ai toujours eu des problèmes avec la logique (même si c'est le propre de l'informaticien ;-)).

    Je voudrais reprendre les bases en partant sur un truc simple.

    J'ai 2 variables : a et b.

    Le seul cas ou la condition doit être réalisée, c'est lorsque les valeurs de a et b sont fausse (en se basant pour faux : 0, vrai : 1).

    J'ai ma table de vérité qui doit se présenter comme ça :

    a | b | R
    ---------
    0 | 0 | 1
    0 | 1 | 0
    1 | 0 | 0
    1 | 1 | 0

    Quel est l'opérateur qui permet cela (bon, je sais, ça doit être simple... mais... je sèche) !

    Merci par avance.

  2. #2
    Membre éclairé
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Points : 872
    Points
    872
    Par défaut
    C'est un NOR... ou NON OU..ou encore OU NEGATIF


    Si une de mets valeur est a 1 je mets resultat a
    Si A ou B =1 alorsR= 1 + Negation =0
    \_________/ \______/
    OU............... NON
    Si A ou B =0 alors R = 0 + negation R=1
    \________/ \____/
    OU................NON
    [SIZE="2"]Dis moi qui tu suis, je te dirais qui je Hais!
    Heureux est l'étudiant, qui comme la rivière suit son cours sans sortir de son lit

    Mon premier Tutoriel


    A 80% des cas je résouts mon problème en rédigeant une nouvelle discussion, du coup je ne poste que 20% de mes problèmes...

  3. #3
    Membre éclairé
    Inscrit en
    Janvier 2005
    Messages
    711
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 711
    Points : 751
    Points
    751
    Par défaut
    c'est effectivment simple : si tu regarde bien, ce que tu cherche est exactement comme un ET mais avec des faux a la place des vrais , donc la formule que tu cherche est : NON a ET NON b.

    si ma memoire est bonne, ya une astuce simple pour retrouver ce genre de chose dans le cas general :

    - tu ne garde que les lignes de ton tableau ou le resultat est vrai
    - ces lignes te donnent autant de situation ou ton operateur doit etre vrai.
    - par ailleurs, tu sais que l'operateur ET est vrai seulement si les 2 variables sont vrais et qu'il est faux tout le temps ailleurs.
    - donc si tu prend une ligne ou ton operateur doit etre vrai, tu peux toujours l'ecrire comme un ET quitte a prendre la negation de certaines variables
    - tu fais ca pour chaque ligne qui doit etre vrai et tu les "accroche" ensemble avec des ou.
    - par propriété du ET, la formule aisni construite sera fausse partout ailleurs.

    si ar exemple tu prend le tableau suivant :

    a b resultat
    1 1 0
    0 1 1
    1 0 1
    0 0 0

    tu reconnais peut etre le XOR (ou exclusif). mais faisons comme si on ne l'avais pas vu. tu ne garde que les lignes ou le resultat doit etre vrai. qu'est ce que ca veut dire ? au final, on a que ca doit etre vrai :
    - soit quand a est vrai et b est faux
    - soit quand a est faux et b est vrai.

    et faux dans tous les autrs cas. en mettant des "NON" au bons endroits, tu peux toujours n'avoir que des vrai. donc la formule doit etre vraie :

    - soit quand a est vrai et NON b est vrai
    - soit quand NON a est vrai et b est vrai

    et donc la tu conclus facilement que la formule que tu cherches est :

    (a ET NON b) OU (NON a ET b)

    et ca c'est une technique tres simple (mais casse c*** a expliquer) qui marche tout le temps, quelque soit le nombre de variable !! evidemment, ca ne donne pas toujours la formule la plus simple, mais apres tu peux toujours factoriser. dis moi si tu as compris l'idee, car j'ai peur d'expliquer ca particulierement mal

  4. #4
    Membre éclairé
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Points : 872
    Points
    872
    Par défaut
    Citation Envoyé par jobherzt
    Toute sa Theorie....
    Et pour conclure c'est quel opérateur???


    C'est bien compliqué tou ca.....

    Tu fait la table OU.

    | A | B | R |
    ------------
    | 0 | 0 | 0 |
    | 0 | 1 | 1 |
    | 1 | 0 | 1 |
    | 1 | 1 | 1 |

    C'est la table du OU, tu regardes ton resultat a avoir qui est l'inverse....
    Donc tu applique la négation sur les résultat

    Donc notre Operateur est le NOR, OU NEGATIF ou si tu préfère NON OU.


    Pourquoi faire compliquer quant on peut simple....
    [SIZE="2"]Dis moi qui tu suis, je te dirais qui je Hais!
    Heureux est l'étudiant, qui comme la rivière suit son cours sans sortir de son lit

    Mon premier Tutoriel


    A 80% des cas je résouts mon problème en rédigeant une nouvelle discussion, du coup je ne poste que 20% de mes problèmes...

  5. #5
    Membre éclairé
    Inscrit en
    Janvier 2005
    Messages
    711
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 711
    Points : 751
    Points
    751
    Par défaut
    euh, c'etait une tentative pour donner une methode generale, c'est tout... dans ce cas c'est simple, mais ca n'est pas toujours le cas... donc faire simple, oui quand on a un peu l'habitude et la bonne intuition, mais avoir une methode "mecanique" c'est bien aussi. non ?

    note que je precise bien :
    evidemment, ca ne donne pas toujours la formule la plus simple, mais apres tu peux toujours factoriser

  6. #6
    Membre éclairé
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Points : 872
    Points
    872
    Par défaut
    Tout a fait! C'est sur que ca vient un peu lourd lorsqu'il y a 4 ou 5 entrées... mais et même avec ca, tu regarde le résultat et tu arrives en générale en le sortir.

    Mais ca fait longtemps que j'ai fait ca.... en Bac STI Electronique, et un peu en BTS.... la je fini mon année de Master2.... donc c'est loin surtout que je ne suis plus en électronique...
    [SIZE="2"]Dis moi qui tu suis, je te dirais qui je Hais!
    Heureux est l'étudiant, qui comme la rivière suit son cours sans sortir de son lit

    Mon premier Tutoriel


    A 80% des cas je résouts mon problème en rédigeant une nouvelle discussion, du coup je ne poste que 20% de mes problèmes...

  7. #7
    Membre habitué

    Inscrit en
    Avril 2004
    Messages
    646
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 646
    Points : 145
    Points
    145
    Par défaut
    Ah ben merci pour ces réponses très concrètes !

    Question subsidiaire : où puis-je trouver des liens sur les tables de vérités, ou sur la logique plus spécifiquement ?

    Merci

  8. #8
    Membre éclairé
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Points : 872
    Points
    872
    Par défaut
    est ton ami!
    [SIZE="2"]Dis moi qui tu suis, je te dirais qui je Hais!
    Heureux est l'étudiant, qui comme la rivière suit son cours sans sortir de son lit

    Mon premier Tutoriel


    A 80% des cas je résouts mon problème en rédigeant une nouvelle discussion, du coup je ne poste que 20% de mes problèmes...

  9. #9
    Blue_Strike
    Invité(e)
    Par défaut
    bonjour,

    Citation Envoyé par esoso
    J'ai 2 variables : a et b.

    Le seul cas ou la condition doit être réalisée, c'est lorsque les valeurs de a et b sont fausse (en se basant pour faux : 0, vrai : 1).

    J'ai ma table de vérité qui doit se présenter comme ça :

    a | b | R
    ---------
    0 | 0 | 1
    0 | 1 | 0
    1 | 0 | 0
    1 | 1 | 0

    Quel est l'opérateur qui permet cela (bon, je sais, ça doit être simple... mais... je sèche) !
    +1, absolument NOR

    cours Logique.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problèmes de logique ! ne fait pas dans l'ordre.
    Par djibb dans le forum Tkinter
    Réponses: 3
    Dernier message: 29/05/2007, 17h06
  2. Problème de logique mathématique dans mon script
    Par finalfx dans le forum Flash
    Réponses: 1
    Dernier message: 24/05/2007, 16h03
  3. Problème de logique :)
    Par deaven dans le forum Oracle
    Réponses: 1
    Dernier message: 13/10/2006, 18h49
  4. Réponses: 10
    Dernier message: 14/07/2006, 20h22
  5. Petit problème de logique...
    Par insomniak dans le forum C++
    Réponses: 15
    Dernier message: 31/10/2005, 20h13

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