Introduction :
Création d'une calculatrice capable de gérer les expressions algébriques simples saisies en notation normale présentent un défi, car PHP n'a pas de fonctionnalité intégrée pour l'analyse des expressions. Pour résoudre ce problème, nous pouvons exploiter l'algorithme de triage de manœuvre puissant et efficace.
Mise en œuvre :
Exemple de code :
Mise en œuvre de la gare de triage L'algorithme nécessite une série de classes et de fonctions qui représentent les différents composants. Voici un aperçu :
class TerminalExpression { // Represents operands and operators } class Number extends TerminalExpression { // Represents numeric values } class Operator extends TerminalExpression { // Represents arithmetic operators (+, -, *, /, ^) } class Parenthesis extends TerminalExpression { // Represents parentheses ((), used for grouping) } class Stack { // A simple stack data structure } class Math { // Contains the logic for evaluation and parsing }
Exemple d'utilisation :
Une fois implémentée, vous pouvez utiliser la calculatrice comme suit :
$math = new Math(); $result = $math->evaluate("(2 + 3) * 4"); echo $result; // Output: 20
Avantages de la gare de triage Algorithme :
En utilisant l'algorithme Shunting Yard, vous pouvez créer une calculatrice PHP capable d'évaluer des expressions algébriques simples de manière robuste et performante .
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!