110 likes | 235 Views
中置記法( IN ) → 後置記法( RPN ) による演算処理 例) 1 + 2 * 3 - 4 ↓ 1 2 3 * + 4 -. 1 個 ずつ tmp に取り出す ( st B の中は RPN の逆順) ・ 数字の場合 : st A に push ・ 演算子 の 場合 : 演算処理. tmp. 1. 2. 3. d [0]. *. stA. st B. +. 4. d[1]. -. 中置記法( IN ) → 後置記法( RPN ) による演算処理 例) 1 + 2 * 3 - 4 ↓ 1 2 3 * + 4 -. tmp. 1.
E N D
中置記法(IN) → 後置記法(RPN)による演算処理中置記法(IN) → 後置記法(RPN)による演算処理 例) 1+2*3-4 ↓ 1 2 3 * + 4 - 1個ずつtmpに取り出す (stBの中はRPNの逆順) ・ 数字の場合:stAにpush ・ 演算子の場合: 演算処理 tmp 1 2 3 d[0] * stA stB + 4 d[1] -
中置記法(IN) → 後置記法(RPN)による演算処理中置記法(IN) → 後置記法(RPN)による演算処理 例) 1+2*3-4 ↓ 1 2 3 * + 4 - tmp 1 2 3 d[0] * stA stB + 4 d[1] 1 -
中置記法(IN) → 後置記法(RPN)による演算処理中置記法(IN) → 後置記法(RPN)による演算処理 例) 1+2*3-4 ↓ 12 3 * + 4 - tmp 2 3 d[0] * stA stB + 2 4 d[1] 1 -
中置記法(IN) → 後置記法(RPN)による演算処理中置記法(IN) → 後置記法(RPN)による演算処理 例) 1+2*3-4 ↓ 123 * + 4 - tmp 3 d[0] * stA stB 3 + 2 4 d[1] 1 -
中置記法(IN) → 後置記法(RPN)による演算処理中置記法(IN) → 後置記法(RPN)による演算処理 例) 1+2*3-4 ↓ 12 3 * + 4 - tmp * 2 d[0] stA stB 3 + 3 2 4 d[1] 1 -
中置記法(IN) → 後置記法(RPN)による演算処理中置記法(IN) → 後置記法(RPN)による演算処理 例) 1+2*3-4 ↓ 16+ 4 - tmp d[0]*d[1]=2*3=6 をstAにpush * 2 d[0] stA stB + 3 6 4 d[1] 1 -
中置記法(IN) → 後置記法(RPN)による演算処理中置記法(IN) → 後置記法(RPN)による演算処理 例) 1+2*3-4 ↓ 1 6 + 4 - tmp + 2 1 d[0] stA stB 3 6 6 4 d[1] 1 -
中置記法(IN) → 後置記法(RPN)による演算処理中置記法(IN) → 後置記法(RPN)による演算処理 例) 1+2*3-4 ↓ 7 4 - tmp d[0]+d[1]=1+6=7 をstAにpush + 1 d[0] stA stB 6 4 d[1] 7 -
中置記法(IN) → 後置記法(RPN)による演算処理中置記法(IN) → 後置記法(RPN)による演算処理 例) 1+2*3-4 ↓ 74 - tmp 4 1 d[0] stA stB 6 4 d[1] 7 -
中置記法(IN) → 後置記法(RPN)による演算処理中置記法(IN) → 後置記法(RPN)による演算処理 例) 1+2*3-4 ↓ 7 4- tmp - 7 1 d[0] stA stB 6 4 4 d[1] 7
中置記法(IN) → 後置記法(RPN)による演算処理中置記法(IN) → 後置記法(RPN)による演算処理 例) 1+2*3-4 ↓ 3 tmp d[0]-d[1]=7-4=3 をstAにpush - 7 d[0] stA stB 4 d[1] 3