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

C++ Discussion :

Réalisation d'un parseur


Sujet :

C++

  1. #1
    Membre confirmé
    Avatar de Kalite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 310
    Points : 553
    Points
    553
    Par défaut Réalisation d'un parseur
    Bonjour à tous,

    J'ai un petit problème concernant la réalisation d'un parseur d'expression logique.
    Je n'arrive pas à trouver le moyen de gérer la priorité des opérateur et les paranthèse.
    J'utilise un arbre pour stocké et permettre l'évaluation de cette expression.

    j'ai chercher des algos de calculatrice mais j'ai rien trouver utilisant un arbre.

  2. #2
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Si tu sais faire une calculatrice respectant les priorites que tu veux, lui faire construire un arbre a la place est trivial, tu remplaces a = v1 op v2 par a = buildnode(op, v1, v2).

    Pour faire la calculatrice, voir par exemple ici
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  3. #3
    Membre confirmé
    Avatar de Kalite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 310
    Points : 553
    Points
    553
    Par défaut
    Le truck c'est que j'arrive pas à faire le faire pour une calculette alors bon je peut pas i arriver avec mon porblème.

    Je regarde ton code et je voi si je comprend (s'il prend en compte les priorité sa va me vraiment me fasilité la vie).

    Merci

  4. #4
    Membre confirmé
    Avatar de Kalite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 310
    Points : 553
    Points
    553
    Par défaut
    Bon j'ai bien compris le code -> il permet d'évaluer un calcul.

    Ce qui ma fait réfléchir sur ma conception. Faut que je voye si j'utilise un tas ou un arbre (dans les deux cas je vai avoir un problème avec l'algo mais faut déjà que je choisisse car l'algo est différent).

    Merci

  5. #5
    Membre confirmé
    Avatar de Kalite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 310
    Points : 553
    Points
    553
    Par défaut
    Rectification je reste sur un arbre donc mon problème est toujours le même.

    Je vai plancher dessu demain.

  6. #6
    Membre confirmé
    Avatar de Kalite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 310
    Points : 553
    Points
    553
    Par défaut
    Bon ok c'est vraiment trivial mais j'ai mit du temps a comprendre.

    Au fait une question pourquoi le code est indenté à la java???
    C'est surment moi mais franchement j'ai trop de mal à le lire.

    Merci pour ton aide la je devrai i arriver.

  7. #7
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par Kalite Voir le message
    Au fait une question pourquoi le code est indenté à la java?
    Qu'appelles-tu à la Java? Il me semble que j'utilise un style K&R assez pur.
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  8. #8
    Membre confirmé
    Avatar de Kalite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 310
    Points : 553
    Points
    553
    Par défaut
    Ce que j'appel indenté à la java c'est la méthode suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    class CExemple {
    	void PrintExemple {
    		if ( prédicat ) {
    			//code
    		}
    	}
    };
    Je prefère (et je trouve sa plus lisible) quand l'indentation est la suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    class CExemple 
    {
    	void PrintExemple 
    	{
    		if ( prédicat ) 
    		{
    			//code
    		}
    	}
    };
    Bon j'ai peut être tord mais quand ya beacoup de scope imbriquer c'est plus facile de si retourver et si on à oublier d'en fermer un ca ce voit.

  9. #9
    screetch
    Invité(e)
    Par défaut
    il n'y a pas de raison ou tort, il y a des préférences. les coups et les douleurs, ca ne se discute pas

  10. #10
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par Kalite Voir le message
    Ce que j'appel indenté à la java c'est la méthode suivante
    C'est bien le style utilise par K&R et BS... (a part que le premier niveau n'a les parentheses sur la premiere colonne).

    Bon j'ai peut être tord
    Ce n'est pas une question de tord ou de raison. Mais c'est un style populaire qui est celui de nos conventions.

    mais quand ya beacoup de scope imbriquer c'est plus facile de si retourver et si on à oublier d'en fermer un ca ce voit.
    1. il n'y a pas (enfin... ne devrait pas y avoir) beaucoup de niveaux imbriques.
    2. mon editeur m'indique cela tout seul... l'indentation automatique foire pour commencer si on oublie de fermer un niveau. Sans parler du fait qu'il indique les correspondances entre machins ouvrant et machins fermant.
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  11. #11
    Membre confirmé
    Avatar de Kalite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 310
    Points : 553
    Points
    553
    Par défaut
    Oki ba on pas le même éditeur (j'utilise VC 6 -> j'ai pas le choix). De plus, personnelement dans mon entreprise on est tous d'accord pour ne pas utiliser le même style que toi, mais ceci n'est qu'une histoire de point vue comme tu la di très justement.

    Merci pour l'aide sa marche nikel maintenant.

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

Discussions similaires

  1. Aide pour réaliser un parseur
    Par abdel1342 dans le forum Langage
    Réponses: 19
    Dernier message: 15/03/2012, 15h51
  2. msi ou comment réaliser un installeur?
    Par herzleid dans le forum Delphi
    Réponses: 11
    Dernier message: 09/04/2007, 19h27
  3. [Radio fréquence] réalisation d'une application
    Par WriteLN dans le forum Développement
    Réponses: 14
    Dernier message: 05/06/2003, 14h36
  4. [imprecis]Réaliser a^n avec seulement l'opérateur d'addition
    Par Amon dans le forum Algorithmes et structures de données
    Réponses: 18
    Dernier message: 08/11/2002, 22h22
  5. Réponses: 3
    Dernier message: 04/09/2002, 09h42

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