using System; using System.Collections.Generic; class Program { static double TinhBieuThucHauTo(string[] bieuThuc) { Stack stack = new Stack(); foreach (string phanTu in bieuThuc) { double so; if (double.TryParse(phanTu, out so)) { stack.Push(so); } else { double toanHang2 = stack.Pop(); double toanHang1 = stack.Pop(); double ketQua = 0; switch (phanTu) { case "+": ketQua = toanHang1 + toanHang2; break; case "-": ketQua = toanHang1 - toanHang2; break; case "*": ketQua = toanHang1 * toanHang2; break; case "/": ketQua = toanHang1 / toanHang2; break; default: Console.WriteLine("Toan tu khong hop le"); break; } stack.Push(ketQua); } } return stack.Pop(); } static void Main() { string[] bieuThuc = { "2", "3", "4", "*", "+" }; double ketQua = TinhBieuThucHauTo(bieuThuc); Console.WriteLine("Ket qua la: " + ketQua); } }