Évaluation expressions mathématiques

Description

comme le dit le titre, ça évalue une expression mathématique en basculant l'expression parenthésée en une pile en notation polonaise. Ou plutôt polonaise inverse il me semble.
Je suis parti de la source de Oniria :
http://www.delphifr.com/codes/CALCULATRICE-CHAINES-MATHEMATIQUES_45537.aspx
J'ai tout refait en utilisant cette fois ci un algorithme tiré du site Wikipédia :
http://fr.wikipedia.org/wiki/Notation_polonaise_inverse
Ainsi, c'est le même algo qui inverse les opérateurs dans une expression simple et qui traite les parenthèses et les fonctions, les constantes...

Il y a pas mal de commentaire dans le code.

Il est facile de rajouter des fonctions :
1 - en complétant les deux constantes tableaux "OpInfos" et "OpCodes" dans l'unité "UOperateur.pas"
2 - en ajoutant le calcul à faire dans "Eval_exp" de l'unité "UExpressions.pas"

Pour le reste, le programme d'exemple traite :
- une série de calcul avec une éventuelle affectation à des variables sur la gauche de la fiche
- une série de fonction dépendant de X à droite de la fiche et trace leurs courbes en point par point.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.