Question

Comment évaluer l'expression mathématique de la chaîne dans J2Me.

Par exemple, une chaîne contenant "2 * 4". De la chaîne, je veux évaluer l'expression mathématique et obtenir le résultat comme 8 (2 * 4) .Comment si je l'ai fait dans J2Me.

Dans "Java ™ Platform Standard Ed. 6" Il existe un package à savoir "Javax.script" est utilisé pour évaluer les expressions mathématiques de String. comme tout package ou toute classe est disponible pour J2ME pour évaluer l'expression mathématique de la chaîne.

Était-ce utile?

La solution 2

Les étapes suivantes sont utilisées pour évaluer l'expression mathématique de la chaîne dans J2ME

  1. Lisez l'expression dans une variable de chaîne. L'expression est sous forme infixée.
  2. Convertissez l'expression dans la variable de chaîne en un formulaire postfix et stockez-le dans une autre variable de chaîne à savoir "PostFix_Str".
  3. Évaluez l'expression dans le formulaire postfix (la valeur dans les données "PostFix_Str") à l'aide de la pile.

Autres conseils

Si vous devez gérer les expressions imbriquées, écrivez simplement votre propre analyseur basé sur la pile.

Si vous n'êtes pas familier avec l'algorithme, vous utilisez deux piles, l'une pour la maintenance des opérateurs et l'autre pour la maintenance des opérandes.

Pour le cas de base, vous analysez tous les opérateurs et opérands dans leurs piles respectives, puis évaluez en faisant éclater deux opérandes et un opérateur, en effectuant le calcul, puis en stockant le résultat sur la pile d'opérands. Continuez jusqu'à ce que la pile de l'opérateur soit vide et que la pile d'opérande n'a qu'une seule valeur (le résultat). Si vous manquez d'opérateurs et qu'il y a plus d'un résultat sur votre pile, il y a une erreur dans l'expression.

Pour gérer les parenthèses (y compris les parenthèses imbriquées), vous incluez des opérateurs pour les parens gauche et droit. Lorsque vous analysez l'expression si vous rencontrez un paren droit commence à évaluer l'expression immédiatement (en train de faire deux opérands et un opérateur, reformant le résultat sur la pile d'opérande) jusqu'à ce que vous rencontrez un paren gauche. Puis reprendre l'analyse de l'expression.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top