a + b * c + ( d + e ) * f kifejezésre próbálj meg balról jobbra karakterenként haladva precedenciahelyes kiértékelőt megvalósítani.
El fogsz jutni a verem bázisú játszmáig és az RPN logikáig. A vége ugyanis
a b c * + d e + f * +
lesz RPN-ben felírva. RPN ha érdekel, a Forth iskolapélda, a dc parancs is RPN, több kalkulátorokban bekapcsolható az RPN mód.
RPN logika szerint: érték ha jön, azt beteszi a stack-be és ha operátor jön, akkor a stackből a legfelső 2 értékkel elvégzi a műveletet. Az eredményt szintén a stackbe teszi vissza. És így tovább.
Ezt az átalakítást nekünk még tanították a BME-n, de akkor én is átsiklottam felette. Aztán amikor kellett, akkor szívtam vele egy sort és szidtam magam, hogy akkor nem figyeltem oda. Mára megtanultam.