Ich muss gestehen, dass deine Hinweise ersteinmal einleuchten klingen mich aber dann doch bisschen verwirren.
Das Problem ist ja, dass die Berechnung erst durchgeführt werden kann, wenn beide Operanden und der Operator bekannt sind, der zweite Operand aber erst nach dem Operator eingegeben wird. Bei "100 +" kannst Du die Addition ja noch nicht durchführen, sondern musst die Eingabe des zweiten Operanden abwarten.
Stellen wir uns vor, Du hättest als Ergebnis einer bereits vorangegangenen Rechnung 100 erhalten. Jetzt willst Du davon 25 abziehen, d. h. Du drückst "-". Das "-" merkt sich das Programm, da der zweite Operand noch fehlt. Anschließend tippst Du 25 ein. Die Eingabe der Zahl musst Du irgendwie abschließen, z. B. indem Du einen Button betätigst, sagen wir mal "=". Beim Klick auf das "=" wird das bisherige Ergebnis (100) mit dem gemerkten Operator ("-") und der eingegebenen Zahl (25) verknüpft, um das neue Ergebnis zu erhalten (100 - 25 = 75).
Das muss natürlich genauso funktionieren, wenn Du statt dem "=" einen Operator-Button klickst, weil Du weiterrechnen willst.
Nochmal von vorne: Du hast als Ergebnis einer bereits vorangegangenen Rechnung 100 erhalten. Jetzt willst Du davon 25 abziehen, d. h. Du drückst "-". Das "-" merkt sich das Programm. Anschließend tippst Du 25 ein. Die Eingabe musst Du irgendwie abschließen, z. B. indem Du einen Button betätigst, sagen wir mal "*". Beim Klick auf das "*" wird also das bisherige Ergebnis (100) mit dem gemerkten Operator ("-") und der eingegebenen Zahl (25) verknüpft, um das neue Ergebnis zu erhalten (100 - 25 = 75). Außerdem merkst Du Dir als Operator den "*". Dann tippst Du z. B. eine 2 ein und klickst auf "=". Jetzt wird das bisherige Ergebnis (75) mit dem gemerkten Operator ("*") und der eingegebenen Zahl (2) verknüpft, um das neue Ergebnis zu erhalten (75 * 2 = 150).
Soweit, so klar.
Jetzt haben wir nur noch ein kleines Problem: wenn Du eine ganz neue Rechnung beginnst, dann hast Du als Ergebnis normalerweise eine 0 stehen und kein Mensch geht her und drückt erstmal auf "+", um anschließend eine Zahl einzugeben. Daher stellen wir einfach den Zustand im Programm her, als ob genau das bereits eingegeben worden wäre. Wir stellen am Anfang also das Ergebnis auf 0 und merken uns den Operator "+".
Wenn man jetzt eine Zahl (100) eintippt und anschließend auf "-" drückt, wird das bisherige Ergebnis (0) mit dem gemerkten Operator ("+") und der eingegebenen Zahl (100) verknüpft, um das neue Ergebnis (100) zu erhalten. Außerdem merkst Du Dir anschließend den eingegebenen Operator ("-").
Mit diesem kleinen Trick (so tun, als ob die Rechnung "0 +" bereits eingegeben worden wäre) funktioniert die Rechnerei ganz unabhängig davon, ob die Rechnung neu begonnen hat oder nicht, immer auf die gleiche Weise und wir brauchen keine ggf. komplizierten Sonderbehandlungen.