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

Mathématiques Discussion :

Problème avec la notation postfixée


Sujet :

Mathématiques

  1. #1
    Membre éclairé Avatar de Onimaru
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2010
    Messages
    283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Turquie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2010
    Messages : 283
    Par défaut Problème avec la notation postfixée
    Salut à tous.
    J'ai fait un algorithme pour convertir une expression infixée en postfixée.
    Les symboles autorisés :
    1) Les parenthèses
    2) Les nombres réels
    3) Les constantes : Pi
    4) Les fonctions : abs, sqrt, ln, exp, sin, cos
    5) Les opérateurs : ^, *, /, +, - (unaire et binaire)
    Quelle priorité dois-je donner aux fonctions et opérateurs pour trouver la bonne conversion ?

  2. #2
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    En informatique, l'usage veut qu'on prenne l'ordre des priorités du C/C++.

    Operator precedence in C/C++
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  3. #3
    Membre éclairé Avatar de Onimaru
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2010
    Messages
    283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Turquie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2010
    Messages : 283
    Par défaut
    Citation Envoyé par pseudocode Voir le message
    En informatique, l'usage veut qu'on prenne l'ordre des priorités du C/C++.

    Operator precedence in C/C++
    Mon problème est par rapport aux opérateurs "- unaire" et la puissance "^"
    ont ils la même priorité???
    et où mettre les fonctions ???

  4. #4
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    Citation Envoyé par Onimaru Voir le message
    Mon problème est par rapport aux opérateurs "- unaire" et la puissance "^"
    ont ils la même priorité???
    et où mettre les fonctions ???
    Les fonctions ne sont pas a proprement parlé des opérateurs, main on peut considérer cela du même niveau que le "sizeof" => priorité 2.

    Les opérateurs unaires sont de priorité 3.

    L'opérateur puissance n'existe pas en C, mais on peut considérer qu'il est juste avant la multiplication => priorité 5.

    Ca nous donne dans l'ordre de precedence:
    • le "-" unaire
    • les fonctions
    • l'opérateur "^"
    • l'opérateur "*"
    • l'opérateur "/"
    • l'opérateur "+"
    • l'opérateur "-" binaire
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  5. #5
    Membre éclairé Avatar de Onimaru
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2010
    Messages
    283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Turquie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2010
    Messages : 283
    Par défaut
    Juste pour savoir : combien vaut -2^2 ???

  6. #6
    Membre éclairé Avatar de Onimaru
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2010
    Messages
    283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Turquie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2010
    Messages : 283
    Par défaut
    Citation Envoyé par pseudocode Voir le message
    Les fonctions ne sont pas a proprement parlé des opérateurs, main on peut considérer cela du même niveau que le "sizeof" => priorité 2.

    Les opérateurs unaires sont de priorité 3.

    L'opérateur puissance n'existe pas en C, mais on peut considérer qu'il est juste avant la multiplication => priorité 5.

    Ca nous donne dans l'ordre de precedence:
    • le "-" unaire
    • les fonctions
    • l'opérateur "^"
    • l'opérateur "*"
    • l'opérateur "/"
    • l'opérateur "+"
    • l'opérateur "-" binaire
    Merci, donc :
    1) - unaire
    2) fonctions
    3) ^
    4) *, /
    5) +, -

  7. #7
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    Citation Envoyé par Onimaru Voir le message
    Juste pour savoir : combien vaut -2^2 ???
    -2^2 --> (-2)^2 --> ((-2))^(2)

    donc 4
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  8. #8
    Membre éclairé Avatar de Onimaru
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2010
    Messages
    283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Turquie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2010
    Messages : 283
    Par défaut
    Citation Envoyé par pseudocode Voir le message
    -2^2 --> (-2)^2 --> ((-2))^(2)

    donc 4
    Merci, c'est ce que je pense, mais dans MATLAB ou la calculatrice de Google -2^2 = -4.

  9. #9
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    Citation Envoyé par Onimaru Voir le message
    Merci, c'est ce que je pense, mais dans MATLAB ou la calculatrice de Google -2^2 = -4.
    Exact. Après m'être documenté un peu, il semble que l'opérateur "puissance" à deux priorités suivant qu'on prenne le terme de gauche ou celui de droite.

    L'opérateur "puissance" sur le terme de gauche -> priorité avant le unaire
    L'opérateur "puissance" sur le terme de droite -> priorité après le unaire

    -2^-2 --> -(2)^(-2) --> -((2)^(-2)) = -0.25
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  10. #10
    Membre éclairé Avatar de Onimaru
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2010
    Messages
    283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Turquie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2010
    Messages : 283
    Par défaut
    Citation Envoyé par pseudocode Voir le message
    Exact. Après m'être documenté un peu, il semble que l'opérateur "puissance" à deux priorités suivant qu'on prenne le terme de gauche ou celui de droite.

    L'opérateur "puissance" sur le terme de gauche -> priorité avant le unaire
    L'opérateur "puissance" sur le terme de droite -> priorité après le unaire

    -2^-2 --> -(2)^(-2) --> -((2)^(-2)) = -0.25
    Je vois, donc les priorité des '^' et '-' unaire sont variables.
    Donc dans le processus de conversion infixée -> postfixée utilisant la pile, on suppose que le '^' est prioritaire sur le '-' unaire, mais dès qu'on trouve un '-' il faut l'empiler, c'est ça ???

  11. #11
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Par défaut
    Citation Envoyé par Onimaru Voir le message
    Je vois, donc les priorité des '^' et '-' unaire sont variables.
    Donc dans le processus de conversion infixée -> postfixée utilisant la pile, on suppose que le '^' est prioritaire sur le '-' unaire, mais dès qu'on trouve un '-' il faut l'empiler, c'est ça ???
    Hum... je dirais qu'on a le droit d'empiler un "^" sur un "- unaire", et réciproquement. Mais bon, je ne suis pas un expert de ce genre de choses.
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  12. #12
    Membre éclairé Avatar de Onimaru
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2010
    Messages
    283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Turquie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2010
    Messages : 283
    Par défaut
    Citation Envoyé par pseudocode Voir le message
    Hum... je dirais qu'on a le droit d'empiler un "^" sur un "- unaire", et réciproquement. Mais bon, je ne suis pas un expert de ce genre de choses.
    Merci, j'ai essayé d'empiler le "- unaire" dès qu'il se présente tout en donnant une plus grande priorité au '^' et ça a marché.

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

Discussions similaires

  1. Problème avec le trio Courier-imap/Squirrelmail/Postfix
    Par Siguillaume dans le forum Réseau
    Réponses: 2
    Dernier message: 21/05/2008, 13h00
  2. Réponses: 1
    Dernier message: 16/05/2008, 08h23
  3. Réponses: 11
    Dernier message: 21/11/2007, 10h01
  4. [Postfix] Divers problèmes avec pop3
    Par Atikae dans le forum Applications et environnements graphiques
    Réponses: 7
    Dernier message: 14/09/2007, 14h28
  5. problème avec postfix sous red hat entreprise
    Par ouakammathieu dans le forum Administration système
    Réponses: 1
    Dernier message: 21/08/2007, 09h44

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