SimReal - Hvordan lage en kalkulator? parAbel Logo

[Hovedmeny] [Galleri] [SMin] [SMax] [SWin] [Eng] [Hjelp] [Forrige] [Neste]
Stategiene med bruk av den såkalte Jernbane-algoritmen illustrert på den foregående side er her overført til anvendelse på et aritmetisk uttrykk.
Eksempel på 'vognsettet' er her det aritmetiske uttrykket:

a/b^c+d*e-a*c

Sidene det er operatorene som skal endre sin plassering, benytter vi sidesporet til plassering av operatorer.
I programmeringen benyttes datastrukturen 'Stakk' til å representere sidesporet.
Sidesporet kalles derfor for operator-stakk (OpStakk).
Ved bruk av en stakk i programmering, foregår både innsetting og uttakk av elementer i den samme enden av stakken, kalt toppen av stakken.
Dette er helt analogt med avhekting og henting av togvogner som vist på foregående side

Alle operatorer kan plasseres ned på den nevnte operator-stakken.
Plasseringen på stakken er selvfølgelig tilknyttet de enkelte operatorers prioritet.
Det kan vises at omforming fra infix til postfix form foregår på en korrekt måte hvis vi sørger for at operator-prioriteten alltid er stigende oppover i stakken.
På neste side ser vi litt nærmere på denne prioriteten.