最近要写一个工资管理软件,不可避免的要用到公式的定义及求值等问题。对于数学表达式的计算,虽然也有直接对表达式进行扫描并按照优先级逐步计算的方法,但感觉还是不如将中缀表达式转换为逆波兰表达式更容易处理。
    使用逆波兰表达式,则有以下几件工作需要去做:
    1.对中缀表达式进行语法分析,或称合法性检查。
    2.将中缀表达式转换为逆波兰表达式。
    3.计算逆波兰表达得到我们想要的值。
以下是我为实现该功能而写的一个简单的类:
中缀表达式到逆波兰表达式的转换及求值using System;
中缀表达式到逆波兰表达式的转换及求值
using System.Text;
中缀表达式到逆波兰表达式的转换及求值
using System.Collections;
中缀表达式到逆波兰表达式的转换及求值
using System.Text.RegularExpressions;
中缀表达式到逆波兰表达式的转换及求值
中缀表达式到逆波兰表达式的转换及求值
namespace Seaking
}

    由于只是工资计算,该类只支持+-×/ 四种运算,而且不支持负数(太麻烦,呵呵),有兴趣的朋友可以自己扩充一下。

相关文章:

  • 2021-12-06
  • 2022-12-23
  • 2022-12-23
  • 2021-07-23
  • 2021-12-06
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-19
  • 2022-12-23
  • 2022-12-23
  • 2021-08-25
相关资源
相似解决方案