网易2017春招编程题:奇怪的表达式求值 [python]

'''
[编程题] 奇怪的表达式求值
时间限制:1秒
空间限制:32768K
常规的表达式求值,我们都会根据计算的优先级来计算。比如*/的优先级就高于+-。
但是小易所生活的世界的表达式规则很简单,从左往右依次计算即可,而且小易所在的世界没有除法,
意味着表达式中没有/,只有(+, - 和 *)。现在给出一个表达式,需要你帮忙计算出小易所在的世界这个表达式的值为多少 
输入描述:
输入为一行字符串,即一个表达式。其中运算符只有-,+,*。参与计算的数字只有0~9. 保证表达式都是合法的,排列规则如样例所示。




输出描述:
输出一个数,即表达式的值


输入例子1:
3+5*7


输出例子1:
56
'''



'''
解题思路:简单
  这个表达式求结果题简单,不过多赘述,复杂的表达式求结果可以参考《Problem Solving with Algorithms and
  Data Structures》一书
'''


'''
代码运行结果:
答案正确:恭喜!您提交的程序通过了所有的测试用例

'''


exp = input()

i = 0
d2 = 'n'
for each in exp:
    if i:
        if i % 2:
            ope = each
            i += 1
        else:
            d1 = result
            d2 = int(each)
            if ope == '*':
                result = d1 * d2
            elif ope == '+':
                result = d1 + d2
            else:
                result = d1 - d2
            i += 1
    else:
        result = int(each)
        i += 1

print(result)


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值