PowerPoint プレゼンテーション

中置記法(IN) → 後置記法(RPN)
例) 1 + 2 * ( 3 - 4 )
数字はstAへ
演算子はstBへ
stA
stB
中置記法(IN) → 後置記法(RPN)
例) 1 + 2 * ( 3 - 4 )
1
stA
stB
中置記法(IN) → 後置記法(RPN)
例) 1 + 2 * ( 3 - 4 )
1
+
stA
stB
中置記法(IN) → 後置記法(RPN)
例) 1 + 2 * ( 3 - 4 )
2
1
+
stA
stB
中置記法(IN) → 後置記法(RPN)
例) 1 + 2 * ( 3 - 4 )
priority(“*”) > priority(“+”)
*
2
1
*
+
stA
stB
中置記法(IN) → 後置記法(RPN)
例) 1 + 2 * ( 3 - 4 )
左括弧はstBへ
(ブロックの役割)
2
1
(
*
+
stA
stB
中置記法(IN) → 後置記法(RPN)
例) 1 + 2 * ( 3 - 4 )
3
2
1
(
*
+
stA
stB
中置記法(IN) → 後置記法(RPN)
例) 1 + 2 * ( 3 - 4 )
priority(“-”) > priority(“(”)
-
3
2
1
(
*
+
stA
stB
中置記法(IN) → 後置記法(RPN)
例) 1 + 2 * ( 3 - 4 )
4
3
2
1
(
*
+
stA
stB
中置記法(IN) → 後置記法(RPN)
例) 1 + 2 * ( 3 - 4 )
左括弧の上に積まれた演算子は,順にstAへ
左括弧が出現したら,右括弧と相殺
)
4
3
2
1
(
*
+
stA
stB
中置記法(IN) → 後置記法(RPN)
例) 1 + 2 * ( 3 - 4 )
1個ずつ取り出す
stB: +,*,-,4,3,2,1
※ RPNの逆順にsortされている
4
3
2
1
1
2
3
4
*
+
stA
stB
中置記法(IN) → 後置記法(RPN)
例) 1 + 2 * ( 3 - 4 )
↓
1234-*+
1個ずつ取り出す
1
2
3
4
*
+
stB