ANALYSEUR LEXICAL ET SYNTAXIQUE DES FORMULES PROPOSITIONNELLES [LOGIQUE MATHÉMAT
cs_zakizaki7
Messages postés12Date d'inscriptionmardi 27 mai 2008StatutMembreDernière intervention29 novembre 2009
-
31 mai 2009 à 20:56
cs_boutemine
Messages postés78Date d'inscriptiondimanche 8 mai 2005StatutMembreDernière intervention21 mars 2018
-
23 févr. 2012 à 18:37
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_boutemine
Messages postés78Date d'inscriptiondimanche 8 mai 2005StatutMembreDernière intervention21 mars 20182 23 févr. 2012 à 18:37
@GILDER, merci pour la mention. Tas raison, la priorité des opérateurs n'a pas été prise en charge. Fallait utiliser un analyseur SLR ou LALR. Quand meme, le code fonctionne avec la notation polonaise.
Pour l'astuce du DataTable, il est meilleur si on avait une expression à évaluer mais comme l'objectif était de reconstruire l'arbre d'analyse syntaxique, j'ai opté pour l'implémentation de l'analyseur ascendant.
Merci pour votre commentaire
gilder
Messages postés3Date d'inscriptionmercredi 2 avril 2003StatutMembreDernière intervention23 février 2012 23 févr. 2012 à 18:12
Merci pour cette source !
Petite précision, cela ne permet que de tester la syntaxe et le lexique.
Ne pas ce baser sur l'arbre car les opérateurs ne sont pas priorisé...
Si vous n'avez que des & et | il suffit de remplacer des & par des * et les | par des + ainsi que les variables par 1 ou 0 dans la formule et faire :
new DataTable().Compute(formule,null);
Si 0 false si <0 true
imadarena
Messages postés1Date d'inscriptiondimanche 18 avril 2010StatutMembreDernière intervention 8 mai 2011 8 mai 2011 à 19:51
Merci du partage..je l'est pas essayé, mais ça a l'air bien fait...
bonne continuation
cs_zakizaki7
Messages postés12Date d'inscriptionmardi 27 mai 2008StatutMembreDernière intervention29 novembre 2009 31 mai 2009 à 20:56
23 févr. 2012 à 18:37
Pour l'astuce du DataTable, il est meilleur si on avait une expression à évaluer mais comme l'objectif était de reconstruire l'arbre d'analyse syntaxique, j'ai opté pour l'implémentation de l'analyseur ascendant.
Merci pour votre commentaire
23 févr. 2012 à 18:12
Petite précision, cela ne permet que de tester la syntaxe et le lexique.
Ne pas ce baser sur l'arbre car les opérateurs ne sont pas priorisé...
Si vous n'avez que des & et | il suffit de remplacer des & par des * et les | par des + ainsi que les variables par 1 ou 0 dans la formule et faire :
new DataTable().Compute(formule,null);
Si 0 false si <0 true
8 mai 2011 à 19:51
bonne continuation
31 mai 2009 à 20:56