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 :

[Flex] Algorithme de parsing/interprétation de formule de calcul Excel


Sujet :

Algorithmes et structures de données

  1. #1
    Membre régulier
    Profil pro
    Développeur Web
    Inscrit en
    Décembre 2004
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2004
    Messages : 97
    Points : 89
    Points
    89
    Par défaut [Flex] Algorithme de parsing/interprétation de formule de calcul Excel
    Bonjour à tous,

    En flex, je dois développer un parseur et interpréteur de formule de calcul Excel.
    Je suis tombé sur ceci sur cette page : http://ewbi.blogs.com/develops/2004/...formula_p.html. Ok, mais le parseur est vraiment léger, il fait juste un parsing pour obtenir un affichage.

    Avez-vous des pistes ou mieux des sources sur lesquelles je pourrais me baser.

    Merci d'avance pour vos contributions,

    Philippe

  2. #2
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    ingénieur informaticien à la retraite
    Inscrit en
    Juin 2005
    Messages
    3 534
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : ingénieur informaticien à la retraite
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 3 534
    Points : 6 723
    Points
    6 723
    Par défaut
    Bonjour,

    j'utiliserai plutôt le couple flex & bison, flex pour extraire les tokens, et bison pour la partie grammaire et faire ta représentation interne interprétable

    personnellement je générai les priorités des opérateurs lors de la lecture, c.a.d. pas à l'exécution

    je n'ai rien pour les formules excel, mais il y a longtemps j'avais fait un interpréteur de C réduit pour Xcoral, la chose était si vieille que je l'avais fait en C et non en C++ qui n'existait par encore (les 'compilateurs' C++ produisaient du C qui était ensuite compilé) mais cela est facilement transposable en C++ car j'avais fait les héritages et 'virtual' à la main. Un interpréteur exel est évidemment un sous ensemble du C réduit que je gérais. Si tu ne trouves rien d'autre tu peux t'en servir en allant voir dans le sous répertoire Smac des sources d'Xcoral, il y a une version du lexer utilisant flex et une autre manuelle car le code produit par flex était trop lent à mon goût, mais tu n'a sans doute pas ces problèmes et depuis qu'Xcoral existe les performances des machines ne sont pas les mêmes

  3. #3
    Membre régulier
    Profil pro
    Développeur Web
    Inscrit en
    Décembre 2004
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2004
    Messages : 97
    Points : 89
    Points
    89
    Par défaut
    Merci beaucoup bruno_pages, Je vais regarder les éléments que tu me donnes

Discussions similaires

  1. Réponses: 3
    Dernier message: 04/01/2013, 16h27
  2. Réponses: 8
    Dernier message: 26/09/2012, 09h44
  3. [XL-2003] Formule de calcul Excel
    Par NEC14 dans le forum Excel
    Réponses: 2
    Dernier message: 15/06/2009, 11h14
  4. Formules de calcul Excel
    Par gdebre dans le forum Excel
    Réponses: 5
    Dernier message: 08/07/2008, 19h54
  5. interprétation formule de calcul
    Par isachat666 dans le forum Langage
    Réponses: 8
    Dernier message: 02/03/2006, 17h38

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