逆波兰

描述: 

 逆波兰记法中,操作符置于操作数的后面。例如表达“三加四”时,写作“3 4 +”,而不是“3 + 4”。如果有多个操作符,操作符置于第二个操作数的后面,所以常规中缀记法的“3 - 4 + 5”在逆波兰记法中写作3 4 - 5 +”:先3减去4,再加上5。使用逆波兰记法的一个好处是不需要使用括号。 

请编写Java函数计算逆波兰表达式的结果。 

输入一个逆波兰表达式, 

1、操作数类型为正的double数,符合java的double常量规范,不同的操作数以空格或者运算符分开; 

2、支持四则运算,即运算符包括+,-,*,/。 

输出为计算结果 

如输入为 “1 2 + 3 *”,则输出为“9.0” 

 

考试要点:

1.能正确处理简单的表达式(50分),如计算 1.0 2 + 的结果为 3.0
2.能正确处理不同的操作符(30分),如计算 1 2 + 3 * 的结果为 9.0
3.能正确识别输入的逆波兰表达式中的语法错误(10分),如输入为 1+ 则抛出 RPNSyntaxErrorException 异常 
4.能正确识别输入的逆波兰表达式中的除零错误(10分),如输入为 1 2 2 -/ 则抛出 DevideByZeroException 异常

 

 
知识点:  
题目来源:  内部整理 
练习阶段:  高级 
运行时间限制: 10Sec
内存限制: 128MByte
输入:  

输入算式,数字字符之间以空格隔开

 
输出:  

输出计算结果

 
样例输入:
1 2 + 3 *
                   
样例输出:
9.0
                    
答案提示:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值