RPN calculator · Máy tính RPN
RPN calculator
In Reverse Polish Notation the operator comes after its two numbers: 2 3 + means 2 + 3, and 2 3 4 * + means 2 + (3 * 4) = 14. No brackets needed.
Use a stack (a list). Read tokens left to right: push numbers; when you hit an operator, pop the top two, combine them (mind the order — the first value popped is the right-hand side), and push the result. The answer is what's left on top.
Máy tính RPN
Trong Notation Ba Lan Reverse, toán tử nằm sau hai số của nó: 2 3 + có nghĩa là 2 + 3, và 2 3 4 * + có nghĩa là 2 + (3 * 4) = 14. Không cần dấu ngoặc.
Sử dụng một ngăn xếp (một danh sách). Đọc các token từ trái sang phải; đẩy số lên; khi gặp toán tử, pop hai giá trị trên cùng, kết hợp chúng (cẩn thận thứ tự — giá trị pop đầu tiên là vế phải), và push kết quả. Kết quả là gì còn sót lại trên đỉnh.
Write rpn_eval(tokens) that evaluates a list of Reverse Polish Notation tokens — integers written as strings and the operators +, -, *, /. Use a stack; / should truncate toward zero. Return the final integer. · Viết rpn_eval(tokens) đánh giá một danh sách các token Notation Reverse Polish — số nguyên được viết dưới dạng chuỗi và các toán tử +, -, *, /. Sử dụng ngăn xếp; / nên cắt xuống về phía zero. Trả về số nguyên cuối cùng.
Click Run to see the output here. · Nhấn Chạy để xem kết quả ở đây.