Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1044 connectés 

  FORUM HardWare.fr
  Programmation
  Algo

  Algo Conversion Notation Infixe en Notation Polonaise Inverse

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Algo Conversion Notation Infixe en Notation Polonaise Inverse

n°1231803
azubal
Posté le 26-10-2005 à 18:50:18  profilanswer
 

Bonjour,
 
je me penche sur cet algo (voir ci dessous : source wikipedia) pour convertir une expression en notation infixe en notation polonaise inverse.
seulement je n'arrive pas a comprendre de quoi il s'agit quand on parle d'associativite a gauche ou a droite.
 
 
 
------------------------------------------------------
tant qu’il y a des tokens à lire:
 
        lire le token
        si c’est un nombre l’ajouter à la sortie
        si c’est un opérateur o1 alors
 
            1) s’il y a un opérateur o2 sur le haut de la pile et si l’une des conditions suivantes est remplie.
 
                        o1 est associativité à gauche et sa priorité est inférieure ou égale à celle d’o2, ou
                        o1 est associativité à droit et sa priorité est inférieure à celle d’o2,
 
                retirer o2 de la pile pour le mettre dans la sortie
 
            2) mettre o1 sur la pile
 
        si le token est une parenthèse gauche, le mettre sur la pile
        si le token est une parenthèse droite, alors dépiler les opérateurs et les mettant dans la sortie jusqu’à la parenthèse gauche qui elle aussi sera dépilée, mais pas mise dans la sortie. Si toute la pile est dépilée sans touver de parenthèse gauche c’est qu’il y a un mauvais parenthésage.
 
    après la lecture du dernier token il faut dépiler tous les opérateurs de la pile et mettre chaque élément dans la sortie.
 
S’il y a une parenthèse gauche c’est qu’il y a eu un mauvais parenthésage.
------------------------------------------------------
 
 
 
du coup, je narrive pas a traduire cette partie de l'algo en C  :??:  
Quelqu'un pourrait il mexpliquer de quoi il sagit ?
 
Merci davance.

mood
Publicité
Posté le 26-10-2005 à 18:50:18  profilanswer
 

n°1231905
Chronoklaz​m
Posté le 26-10-2005 à 21:22:04  profilanswer
 

L'algo est donné c'est quoi le souci ? tu sais faire un getc un isdigit ...  tu sais ce qu'est une pile et un boucle while ...
Allez vasy ! Libere le codeur qui est en toi :)


Message édité par Chronoklazm le 26-10-2005 à 21:22:55

---------------
Scheme is a programmable programming language ! I heard it through the grapevine !
n°1231908
azubal
Posté le 26-10-2005 à 21:25:09  profilanswer
 

bon, je repose la question (visiblement cetait pas clair) :
 
je cherche qqun (ou un lien) qui pourrait m'expliquer ce qu'est "l'associativite a gauche" et a droite.
 
PS : je n'ai ni le droit d'utiliser getc ni isdigit...

n°1231913
Chronoklaz​m
Posté le 26-10-2005 à 21:30:49  profilanswer
 

Google ????

Citation :

Un opérateur associatif à gauche signifie que l'opérande de gauche est d'abord calculée.
 
int resultat = a + b - c;
// équivaut
int resultat = (a + b) - c;


 
Regarde du côté des grammaires et générateurs d'analyseur syntaxique/lexical ... bison et flex en l'occurence.


---------------
Scheme is a programmable programming language ! I heard it through the grapevine !

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Algo

  Algo Conversion Notation Infixe en Notation Polonaise Inverse

 

Sujets relatifs
Conversion du nom d'une variable en string ?Conversion de SVG en JPG,GIF,PNG ou BMP ?
conversion japonais vers code unicodeAlgo avec Alg_exec ( Algo de base, mais qui pose probleme...)
[MSSQL] conversion de date / paramètres regionaux[Algo][C++] Mini Raytracing
Probleme de conversion en hexa.Retrouver l'algo de compression d'un son
flux rss conversion devisesConversion de chaine de caractère en numérique
Plus de sujets relatifs à : Algo Conversion Notation Infixe en Notation Polonaise Inverse


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR