Math :: RPN.

RPN ist eine Perl-Erweiterung für die umgekehrte polnische Mathematikausdruckbewertung.
Jetzt downloaden

Math :: RPN. Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Owen DeLong
  • Website des Verlags:
  • http://search.cpan.org/~owen/Math-RPN-1.08/RPN/RPN.pm

Math :: RPN. Stichworte


Math :: RPN. Beschreibung

RPN ist eine Perl-Erweiterung für umgekehrte polnische Mathematikausdruckbewertung. RPN ist eine Perl-Erweiterung für umgekehrte polnische Math-Ausdrucksauswertung.Synopsis Verwenden Sie Mathe :: RPN; $ value = rpn (expr ...); @ Array = RPN (expr ...); Expr ... ist eine oder mehrere Skalare oder Listen von Skalaren, die RPN-Ausdrücke enthalten. Ein RPN-Ausdruck ist eine Reihe von Zahlen und / oder Operatoren, die durch Kommas getrennt sind. (Kommas sind nur innerhalb von Skalaren erforderlich). Die RPN-Funktion dauert einen Skalar oder eine Liste von SCLARs, die einen RPN-Expression als Satz von Komma-begrenzten Werten und -betreibern enthalten und das Ergebnis oder den Stapel je nach Kontext zurückgeben. Wenn die Funktion in einem Array-Kontext aufgerufen wird, gibt es den gesamten verbleibenden Stapel zurück. Wenn es in einem skalaren Kontext aufgerufen wird, gibt es den obersten Punkt des Stapels zurück. Wenn in einem skalaren Kontext mehr als ein Wert auf dem Stapel verbleibt, wird eine Warnung an stderr.in gesendet Kombination von Werten und Bedienern. Jedes Token, das kein Bediener ist, wird davon ausgegangen, dass ein Wert auf den Stapel geschoben wird. Eine Erläuterung der umgekehrten polnischen Notation ist außerhalb des Geltungsbereichs dieses Dokuments, aber ich beschreibe es kurz als stapelbasierte Art, mathematische Schrift zu schreiben Ausdrücke. Dies hat den Vorteil, dass das Bedarf an Klammern erforderlich ist, und die Vereinfachung der Analyse für Computer gegen die normale algebraische Notation zu geringfügigen Kosten in der Fähigkeit des Menschen, die Ausdrücke leicht zu verstehen. Dieser Evaluator arbeitet mit dem Radfahren durch den Ausdruck von links nach rechts. Da jedes Token angetroffen ist, wird er gegen die Liste der Betreiber überprüft. Wenn es übereinstimmt, wird ein Überprüfen für den Stapelunterlauf durchgeführt. Wenn der Stapel nicht unterverlust ist, wird der Vorgang durchgeführt, indem die erforderliche Anzahl von Operanden von der Oberseite des Stapels entfernt wird. Das Ergebnis wird dann auf den Stapel gedrückt. Operationen, für die die Bestellung erheblich (-, /,% usw.) ist, werden so verarbeitet, dass der obere Element auf dem Stapel als richtiger Operanden behandelt wird, und der nächste Punkt nach unten wird als linker Operand behandelt. Somit würde "5,3, -" ergeben 2, nicht -2. Wenn das Token nicht mit einem der bekannten Bediener übereinstimmt, wird das Token blind auf den Stapel gedrückt. Infolgedessen kann man unerwartete Ergebnisse erzielen. Zum Beispiel würde der Ausdruck "5,3, Oma, +, *" 15 produzieren, da 5 * (3 + 0), wie es enden würde. Das heißt, 5 würde auf den Stapel gedrückt, dann 3, dann "Oma". Als nächstes wird + ausgewertet, also 3+ "Oma" wird bewertet. Perl bewertet "Oma" numerisch 0, also 3 wird auf den Stapel zurückgeschoben. Als nächstes multipliziert das * die oben zwei Elemente des Stapels , die 15 erzeugt, was auf den Stapel zurückgedrückt wird.Virektionen: · Perl · Perl.


Math :: RPN. Zugehörige Software

Fortschrittsmonitor.

ist ein flexibler und konfigurierbarer Rahmen für die Bereitstellung von Rückmeldungen darüber, wie eine langlaufende Aufgabe fortgesetzt wird. ...

137

Herunterladen