Notacja RPN - Politechnika Wrocławska

Transkrypt

Notacja RPN - Politechnika Wrocławska
1
Spis treści
Notacja RPN
Troche˛ historii
Przykład wyliczania wyrażeń arytmetycznych
Przekształcenie
Notacja RPN
Kalkulator RPN
Bogdan Kreczmer
[email protected]
Strona tytułowa
Zakład Podstaw Cybernetyki i Robotyki
Instytut Informatyki, Automatyki i Robotyki
Politechnika Wrocławska
c 2002–2008 Bogdan Kreczmer
Copyright
JJ
II
J
I
Strona 1 z 70
Powrót
Full Screen
Zamknij
Koniec
Dokument ten jest udostepniony
˛
pod warunkiem wykorzystania wyłacznie
˛
do własnych prywa–
tnych potrzeb i może on być kopiowany wyłacznie
˛
w całości, razem z niniejsza˛ strona˛ tytułowa.
˛
Spis treści
Spis treści
Troche˛ historii
• Notacja RPN - troche˛ historii . . . . . . . . . . . . . . . ⇒ 3
Notacja RPN
Przekształcenie
Kalkulator RPN
• Notacja RPN - ogólna idea . . . . . . . . . . . . . . . . . ⇒ 4
• Przekształcenie do RPN . . . . . . . . . . . . . . . . . . . . ⇒ 6
Strona tytułowa
• Kalkulator arytmetyczny w RPN . . . . . . . . . . . . ⇒ 26
JJ
II
J
I
Strona 2 z 70
Powrót
Full Screen
Zamknij
Koniec
Notacja RPN - troche˛ historii
Spis treści
Odwrotna Notacja Polska (RPN - Reverse Polish
Notation) opracowana została przez Jana Łukasiewicza
(r. 1951).
Jedna˛ z podstawowych cech tej notacji jest to, że nie
wymaga ona stosowania nawiasów.
Pierwszy komputer działajacy
˛ w oparciu o notacje˛ RPN
został zbudowany przez prof. Pawlaka. Niestety
nie opatentował on swojego rozwiazania
˛
i firma HP
skopiowała jego pomysł w swoich kalkulatorach.
Troche˛ historii
Notacja RPN
Przekształcenie
Kalkulator RPN
Strona tytułowa
JJ
II
J
I
Strona 3 z 70
Powrót
Full Screen
Zamknij
Koniec
Notacja RPN - ogólna idea
Spis treści
Troche˛ historii
Podstawa˛ własnościa˛ tej notacji jest to, że najpierw
zapisuje sie˛ argumenty a później operatory, np.:
• To jest normalny zapis:
2 + 5
• To już jest zapis w RPN:
2 5 +
Notacja RPN
Przekształcenie
Kalkulator RPN
Strona tytułowa
JJ
II
J
I
Strona 4 z 70
Powrót
Full Screen
Zamknij
Koniec
Notacja RPN - ogólna idea
Spis treści
Troche˛ historii
Notacja RPN
Teraz bardziej złożony przykład.
• Wyrażenie w normalnej notacji:
• W notacji RPN:
Przekształcenie
(2 + 5) ∗ 6
Kalkulator RPN
2 5 + 6 ∗
Strona tytułowa
JJ
II
J
I
Strona 5 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
(2 + 5) ∗ 6
← Rozważmy to wyrażenie.
Przekształcenie
Kalkulator RPN
Strona tytułowa
JJ
II
J
I
Strona 6 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
(2 + 5) ∗ 6
– Aby je przekształcić do notacji
RPN w pierwszym kroku szukamy
podwyrażenia,
które
musi
być
wykonane jako pierwsze.
Przekształcenie
Kalkulator RPN
Strona tytułowa
JJ
II
J
I
Strona 7 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
(2 + 5) ∗ 6
Kalkulator RPN
(2 + 5) ∗ 6
– To bedzie
˛
to.
Strona tytułowa
JJ
II
J
I
Strona 8 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
(2 + 5) ∗ 6
Kalkulator RPN
(2 + 5) ∗ 6
–
Teraz
przekształcamy
to
podwyrażenie
do
postaci
RPN
przesuwajac
˛ operator na jego koniec.
Strona tytułowa
JJ
II
J
I
Strona 9 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
(2 + 5) ∗ 6
Kalkulator RPN
(2 + 5) ∗ 6
2 5 +
∗ 6
– To otrzymujemy jako wynik tego
przekształcenia.
Ramka została
użyta, aby oddzielić cz˛eść zapisana˛ w
normalnej notacji od cz˛eści zapisanej
w notacji RPN
Strona tytułowa
JJ
II
J
I
Strona 10 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
(2 + 5) ∗ 6
Kalkulator RPN
(2 + 5) ∗ 6
2 5 +
∗ 6
– Teraz cała˛ procedure˛ powtarzamy i
szukamy wyrażenia, które wykona sie˛
jako pierwsze traktujac
˛ całe wyrażenie
zapisane w notacji RPN jako jedna˛
liczbe.
˛
Strona tytułowa
JJ
II
J
I
Strona 11 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
(2 + 5) ∗ 6
Kalkulator RPN
(2 + 5) ∗ 6
2 5 +
∗ 6
–
To
bedzie
˛
to
i
ponownie
przekształcamy je jak poprzednio,
przy czym zapis w ramce traktujemy
jako liczbe.
˛
Strona tytułowa
JJ
II
J
I
Strona 12 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
(2 + 5) ∗ 6
Kalkulator RPN
(2 + 5) ∗ 6
2 5 +
∗ 6
2 5 + 6 ∗
Strona tytułowa
JJ
II
J
I
– I tak otrzymujemy już co trzeba.
Strona 13 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Rozważmy jeszcze jeden bardziej złożony przykład.
Notacja RPN
Przekształcenie
Kalkulator RPN
Strona tytułowa
JJ
II
J
I
Strona 14 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Prześledźmy jak transformować bedzie
˛
sie˛ poniższe
wyrażenie.
Notacja RPN
Przekształcenie
Kalkulator RPN
(2 + 5) ∗ (3 + 1) - 7
Strona tytułowa
JJ
II
J
I
Strona 15 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
Kalkulator RPN
(2 + 5) ∗ (3 + 1) - 7
Tak jak wcześniej najpierw szukamy podwyrażeń, które
wykonaja˛ sie˛ przed innymi.
Strona tytułowa
JJ
II
J
I
Strona 16 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
Kalkulator RPN
(2 + 5) ∗ (3 + 1) - 7
Oto i one.
Strona tytułowa
JJ
II
J
I
Strona 17 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
Kalkulator RPN
(2 + 5) ∗ (3 + 1) - 7
Sprowadzamy je do zapisu RPN poprzez przestawienie
operatora.
Strona tytułowa
JJ
II
J
I
Strona 18 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
Kalkulator RPN
2 5 +
∗ (3 + 1) - 7
Wykonujemy te˛ operacje˛ dla każdego nich z osobna.
Strona tytułowa
JJ
II
J
I
Strona 19 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
Kalkulator RPN
2 5 +
∗
3 1 +
-7
To jest rezultatem tego przekształcenia.
Strona tytułowa
JJ
II
J
I
Strona 20 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
Kalkulator RPN
2 5 +
∗
3 1 +
-7
Nastepnym
˛
działaniem, które sie˛ wykona, jest
mnożenie. Wyrażenia w ramkach traktujemy jak liczby.
Strona tytułowa
JJ
II
J
I
Strona 21 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
Kalkulator RPN
2 5 +
∗
3 1 +
-7
Przekształcamy je w identyczny sposób jak poprzednio
przestawiajac
˛ operator.
Strona tytułowa
JJ
II
J
I
Strona 22 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
Kalkulator RPN
2 5 +
3 1 +
∗
-7
Pominiemy wewnetrzne
˛
ramki.
Strona tytułowa
JJ
II
J
I
Strona 23 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
Kalkulator RPN
2 5 + 3 1 + ∗
-7
Ponownie traktujac
˛
wyrażenie w ramce jako
jedna˛ liczbe˛ dokonujemy ostatniej transformacji
dla ostatniego działania.
Strona tytułowa
JJ
II
J
I
Strona 24 z 70
Powrót
Full Screen
Zamknij
Koniec
Przekształcenie do RPN
Spis treści
Troche˛ historii
Notacja RPN
Przekształcenie
Kalkulator RPN
2 5 + 3 1 + ∗7 W ten sposób dochodzimy do finalnej postaci wyrażenia
zapisanego w notacji RPN.
Strona tytułowa
JJ
II
J
I
Strona 25 z 70
Powrót
Full Screen
Zamknij
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Istotna˛ zaleta˛ odwrotnej notacji polskiej jest to, że
istnieje dla niej prosty algorytm wyliczenia wyrażenia
przedstawionego w tej notacji.
Troche˛ historii
Notacja RPN
Przekształcenie
Kalkulator RPN
Strona tytułowa
JJ
II
J
I
Strona 26 z 70
Powrót
Full Screen
Zamknij
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Istotna˛ zaleta˛ odwrotnej notacji polskiej jest to, że
istnieje dla niej prosty algorytm wyliczenia wyrażenia
przedstawionego w tej notacji.
Algorytm ten bazuje na pojeciu
˛
prostej struktury zwanej
stosem, która jest kolejka˛ typu LIFO (ang. Last In First
Out – ostatni wchodzi pierwszy wychodzi).
Idea tego
przykładzie,
mianowicie:
algorytmu zostanie wyjaśniona
który wcześniej rozważaliśmy,
na
a
Notacja RPN
Przekształcenie
Kalkulator RPN
Strona tytułowa
JJ
II
J
I
Strona 27 z 70
(2 + 5) ∗ (3 + 1) - 7
W notacji RPN:
Troche˛ historii
2 5 + 3 1 + ∗7 -
Powrót
Full Screen
Zamknij
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
Troche˛ historii
Notacja RPN
=
Przekształcenie
Kalkulator RPN
Stos:
Strona tytułowa
Przykład,
który
dalej
bedzie
˛
przedstawiany,
zorganizowany jest w nastepuj
˛ acy
˛ sposób:
JJ
II
J
I
Strona 28 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
Troche˛ historii
Notacja RPN
=
Przekształcenie
Kalkulator RPN
Stos:
Strona tytułowa
Na wejściu mamy wyrażenie w notacji RPN. Bedzie
˛
ono czytane sekwencyjnie. Każdy jego element bedzie
˛
czytany oddzielnie.
JJ
II
J
I
Strona 29 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
Troche˛ historii
Notacja RPN
=
Przekształcenie
Kalkulator RPN
Stos:
Strona tytułowa
Wyrażenie na wejściu odpowiada wyrażeniu na dole
przedstawionemu w notacji zwyczajowej.
JJ
II
J
I
Strona 30 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
Troche˛ historii
Notacja RPN
=
Przekształcenie
Kalkulator RPN
Stos:
Strona tytułowa
Dysponujemy ponadto stosem, w którym składowane
bed
˛ a˛ wczytywane liczby ...
JJ
II
J
I
Strona 31 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
Troche˛ historii
Notacja RPN
=
Przekształcenie
Kalkulator RPN
Stos:
Strona tytułowa
... oraz obszarem roboczym, w którym wykonywane
bed
˛ a˛ poszczególne działania.
JJ
II
J
I
Strona 32 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
Troche˛ historii
Notacja RPN
=
Przekształcenie
Kalkulator RPN
Stos:
Strona tytułowa
A wiec
˛ zaczynamy.
JJ
II
J
I
Strona 33 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
⇑
-
Troche˛ historii
Notacja RPN
=
Przekształcenie
Kalkulator RPN
Stos:
Strona tytułowa
Czytany jest pierwszy element wyrażenia.
JJ
II
J
I
Strona 34 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
Notacja RPN
=
Stos:
Troche˛ historii
Przekształcenie
Kalkulator RPN
2
Strona tytułowa
Ze wzgledu
˛ na to, że jest to liczba, umieszczona zostaje
ona na stosie.
JJ
II
J
I
Strona 35 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
⇑
Troche˛ historii
Notacja RPN
=
Stos:
-
Przekształcenie
Kalkulator RPN
2
Strona tytułowa
Czytany jest nastepny
˛
element.
JJ
II
J
I
Strona 36 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
Notacja RPN
=
Stos:
Troche˛ historii
Przekształcenie
Kalkulator RPN
5
2
Strona tytułowa
Podobnie jak wcześniej, w przypadku napotkania liczby
umieszczamy ja˛ na stosie.
JJ
II
J
I
Strona 37 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
Notacja RPN
=
Stos:
Troche˛ historii
Przekształcenie
Kalkulator RPN
5
2
Strona tytułowa
Wykonujac
˛ kolejna˛ operacje˛ czytania dochodzimy do
operatora.
JJ
II
J
I
Strona 38 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
Notacja RPN
+
Stos:
Troche˛ historii
=
Przekształcenie
Kalkulator RPN
5
2
Strona tytułowa
Tym razem w obszarze roboczym zrealizujemy
interpretacje˛ napotkanej operacji arytmetycznej i jej
wykonanie.
JJ
II
J
I
Strona 39 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
Notacja RPN
+
Stos:
Troche˛ historii
5
=
Przekształcenie
Kalkulator RPN
2
Strona tytułowa
W tym celu pobieramy z wierzchołka stosu liczbe˛ i
traktujemy ja˛ jako drugi argument danej operacji
arytmetycznej.
JJ
II
J
I
Strona 40 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
Troche˛ historii
Notacja RPN
2
+
5
=
Przekształcenie
Kalkulator RPN
Stos:
Strona tytułowa
Powtarzamy ta˛ czynność pobierajac
˛ kolejna˛ liczbe˛
z wierzchołka stosu i traktujemy ja˛ tym razem jako
pierwszy argument danej operacji arytmetycznej.
JJ
II
J
I
Strona 41 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
Troche˛ historii
Notacja RPN
2
+
5
=
7
Przekształcenie
Kalkulator RPN
Stos:
Strona tytułowa
Wykonujemy zadana˛ operacje˛ arytmetyczna˛ ...
JJ
II
J
I
Strona 42 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
Notacja RPN
2
Stos:
Troche˛ historii
+
5
=
7
Przekształcenie
Kalkulator RPN
7
Strona tytułowa
... i jej wynik umieszczamy na stosie.
JJ
II
J
I
Strona 43 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
Notacja RPN
=
Stos:
Troche˛ historii
Przekształcenie
Kalkulator RPN
7
Strona tytułowa
Kontynuujac
˛ operacje˛ czytania dochodzimy do natepnej
˛
liczby.
JJ
II
J
I
Strona 44 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
Notacja RPN
=
Stos:
Troche˛ historii
Przekształcenie
Kalkulator RPN
3
7
Strona tytułowa
Podobnie jak wcześniej umieszczamy ja˛ na wierzchołku
stosu.
JJ
II
J
I
Strona 45 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
⇑
Troche˛ historii
Notacja RPN
=
Stos:
-
Przekształcenie
Kalkulator RPN
3
7
Strona tytułowa
Ponownie wczytujemy nastepn
˛ a˛ liczbe˛ ...
JJ
II
J
I
Strona 46 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
Notacja RPN
=
Stos:
Troche˛ historii
1
3
7
Przekształcenie
Kalkulator RPN
Strona tytułowa
...
i ponownie jak w poprzednich przypadkach
umieszczamy ja˛ na wierzchołku stosu.
JJ
II
J
I
Strona 47 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
Notacja RPN
=
Stos:
Troche˛ historii
1
3
7
Przekształcenie
Kalkulator RPN
Strona tytułowa
W wyniku realizacji kolejnej operacji
napotykamy operator arytmetyczny.
czytania
JJ
II
J
I
Strona 48 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
+
Stos:
Troche˛ historii
Notacja RPN
=
1
3
7
Przekształcenie
Kalkulator RPN
Strona tytułowa
Podobnie jak wcześniej przechodzimy do interpretacji
wczytanego operatora arytmetycznego i realizacji
odpowiadajacej
˛ mu operacji.
JJ
II
J
I
Strona 49 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
+
Stos:
Troche˛ historii
Notacja RPN
1
=
Przekształcenie
Kalkulator RPN
3
7
Strona tytułowa
W tym celu z wierzchołka stosu pobieramy liczbe˛
traktujac
˛ ja˛ jako drugi argument operacji.
JJ
II
J
I
Strona 50 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
3
Stos:
+
Troche˛ historii
Notacja RPN
1
=
Przekształcenie
Kalkulator RPN
7
Strona tytułowa
W analogiczny sposób otrzymujemy pierwszy argument
tej operacji arytmetycznej.
JJ
II
J
I
Strona 51 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
3
Stos:
+
Troche˛ historii
Notacja RPN
1
=
4
Przekształcenie
Kalkulator RPN
7
Strona tytułowa
Wykonujemy zadana˛ operacje˛ ...
JJ
II
J
I
Strona 52 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
3
Stos:
+
Troche˛ historii
Notacja RPN
1
=
4
Przekształcenie
Kalkulator RPN
4
7
Strona tytułowa
... i otrzymany wynik kładziemy na stos.
JJ
II
J
I
Strona 53 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
⇑
7
Troche˛ historii
Notacja RPN
=
Stos:
-
Przekształcenie
Kalkulator RPN
4
7
Strona tytułowa
W nastepnym
˛
kroku wczytujemy kolejny operator.
JJ
II
J
I
Strona 54 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
Stos:
∗
⇑
7
-
Troche˛ historii
Notacja RPN
=
Przekształcenie
Kalkulator RPN
4
7
Strona tytułowa
Tak jak miało to miejsce wcześniej przechodzimy do
interpretacji napotkanej operacji arytmetycznej.
JJ
II
J
I
Strona 55 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
Stos:
∗
⇑
4
7
-
Troche˛ historii
Notacja RPN
=
Przekształcenie
Kalkulator RPN
7
Strona tytułowa
Ściagamy
˛
ze stosu drugi argument operacji ...
JJ
II
J
I
Strona 56 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
7
1
+
∗
∗
⇑
4
7
-
Troche˛ historii
Notacja RPN
=
Przekształcenie
Kalkulator RPN
Stos:
Strona tytułowa
... a nastepnie
˛
jej pierwszy argument.
JJ
II
J
I
Strona 57 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
7
1
+
∗
∗
⇑
4
7
-
Troche˛ historii
Notacja RPN
=
28
Przekształcenie
Kalkulator RPN
Stos:
Strona tytułowa
Wykonujemy operacje˛ ...
JJ
II
J
I
Strona 58 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
7
Stos:
+
∗
∗
⇑
4
7
-
Troche˛ historii
Notacja RPN
=
28
Przekształcenie
Kalkulator RPN
28
Strona tytułowa
... i wynik umieszczamy na stosie.
JJ
II
J
I
Strona 59 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
=
Stos:
Troche˛ historii
Notacja RPN
Przekształcenie
Kalkulator RPN
28
Strona tytułowa
Tym razem wykonujac
˛ operacje˛ czytania napotykamy
liczbe.
˛
JJ
II
J
I
Strona 60 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
⇑
=
Stos:
Troche˛ historii
Notacja RPN
Przekształcenie
Kalkulator RPN
7
28
Strona tytułowa
Tak jak w każdym poprzednim przypadku kładziemy ja˛
na stos.
JJ
II
J
I
Strona 61 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
Troche˛ historii
⇑
Notacja RPN
=
Stos:
Przekształcenie
Kalkulator RPN
7
28
Strona tytułowa
Kolejna operacja czytania udostepnia
˛
nam operator
arytmetyczny.
JJ
II
J
I
Strona 62 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
Stos:
∗
7
-
Troche˛ historii
⇑
Notacja RPN
=
Przekształcenie
Kalkulator RPN
7
28
Strona tytułowa
I
znów
powtarzamy
wcześniejsze
czynności
przechodzac
˛ do interpretacji napotkanej operacji
arytmetycznej.
JJ
II
J
I
Strona 63 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
-
Stos:
∗
7
7
=
-
Troche˛ historii
⇑
Notacja RPN
Przekształcenie
Kalkulator RPN
28
Strona tytułowa
Ściagamy
˛
ze stosu drugi argument operacji ...
JJ
II
J
I
Strona 64 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
28
+
-
∗
7
7
=
-
Troche˛ historii
⇑
Notacja RPN
Przekształcenie
Kalkulator RPN
Stos:
Strona tytułowa
... a nastepnie
˛
jej pierwszy argument.
JJ
II
J
I
Strona 65 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
28
+
-
∗
7
7
=
-
Troche˛ historii
⇑
Notacja RPN
21
Przekształcenie
Kalkulator RPN
Stos:
Strona tytułowa
Wykonujemy zadana˛ operacje.
˛
JJ
II
J
I
Strona 66 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
28
Stos:
+
-
∗
7
7
=
-
Troche˛ historii
⇑
Notacja RPN
21
Przekształcenie
Kalkulator RPN
21
Strona tytułowa
Jej wynik umieszczamy na stosie.
JJ
II
J
I
Strona 67 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
Troche˛ historii
⇑
Notacja RPN
=
Stos:
Przekształcenie
Kalkulator RPN
21
Strona tytułowa
Operacja ta kończy realizacje˛ całego algorytmu i
interpretacje˛ rozważanego wyrażenia arytmetycznego,
gdyż na wejściu nie ma już żadnych nowych symboli.
JJ
II
J
I
Strona 68 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Kalkulator arytmetyczny w RPN
Spis treści
Wejście:
2
5
+
3
1
+
∗
7
-
Troche˛ historii
⇑
Notacja RPN
=
Stos:
Przekształcenie
Kalkulator RPN
21
Strona tytułowa
Warto zauważyć, że dla poprawnie zbudowanego
wyrażenia po zakończeniu jego interpretacji na
szczycie stosu pozostanie tylko jedna liczba (przy
założeniu, że startujemy z pustym stosem).
JJ
II
J
I
Strona 69 z 70
Powrót
Full Screen
Zamknij
Obliczenia dla wyrażenia: (2 + 5) ∗ (3 + 1) − 7
Koniec
Koniec
Spis treści
Troche˛ historii
Wszelkie uwagi i spostrzeżenia do niniejszej prezentacji
sa˛ mile widziane. Prosz˛e je kierować na adres
[email protected]
Notacja RPN
Przekształcenie
Kalkulator RPN
Strona tytułowa
JJ
II
J
I
Strona 70 z 70
Powrót
Full Screen
Zamknij
Koniec