theoretisch nicht,
aber nachdem
> - 1 - 2 - 3 - 4 - 5
bis hier aufgelöst wurde
> -3 - 3 - 4 - 5
hier nach ist i nun 1
und es wird grad noch das - getroffen
> -6 - 4 - 5
danach steht i durch deine Berechnung aber auf
2,
verfehlt knapp das 1. "-" und nimmt sich als Nächstes erstmal das 2. "-" vor, also 4 - 5
> -6 - -1
und im letzten Durchgang kommt es dann natürlich zu
> -7
stimmt ... die Endlosschleife hab ich glatt übersehn
versuch mal nur i:=i+1; an dieser Stelle und wenn du was ersetzt hast, dann ma da gleich ein i:=i-1; oder i:=-1; rein
Zitat von
athomas:
ach ja, das problem mit -- oder +- hab ich einfach mit stringreplace lösen können
man hätte auch statt i=0 auf "ist davor nichts oder noch ein anderer Operator (+-*/)" bzw. "ist davor KEINE Zahl" prüfen können.
denn wenn dieses zutrifft, dann handelt es sich bei diesem + oder - um ein Vorzeichen ... ansonsten um einen Operator
@NamenLozer:
1--2 aka 1 - -2 ist also nicht korrekt?