Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#9

AW: Anfänger braucht Hilfe XD

  Alt 15. Mär 2017, 22:07
Wieso 3 und 2?

Einmal die letzte Zahl und dann noch den letzten Operator (hier kann man sich einfach das AusgabeEdit als "Variable" nehmen)

* Tippt man Zahlen ein, geht das ins Edit
* drückt man einen Operator
** wird zuerst die letzte Zahl und der letzte Operator mit der aktuellen Zahl Eingabe-Edit verrechnet (wenn etwas im Zwischenspeicher steht)
*** Ergebnis langet dann im AusgabeEdit
*** war nichts im Zwischenspeicher, dann landet nur die Eingabe in der Ausgabe
** nun wird noch der gedrückte Operator gespeichert
** und es geht mit der nächsten Zahl weiter ... also ab nach oben

Mit "richtiger" Operatorenreihen (z.B. 1+2*3 = 1+(2*3) statt nacheinander (1+2)*3 ) und Klammern wird es schwerer und man braucht einen Stack.

Eine Eingabe in Postfix ( https://de.wikipedia.org/wiki/Umgeke...ische_Notation ) würde in der einfachsten Variante nur eine Variable für die letzte Zahl benötigen, den den Operator braucht man nicht speichern, da er ja zuletzt eingegeben wird.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (15. Mär 2017 um 22:23 Uhr)
  Mit Zitat antworten Zitat