• 奇怪的表达式求值 (java实现)


    题目参考:http://blog.csdn.net/fuxuemingzhu/article/details/68484749

    问题描述;

    题目描述:

    常规的表达式求值,我们都会根据计算的优先级来计算。比如*/的优先级就高于+-。但是小易所生活的世界的表达式规则很简单,从左往右依次计算即可,而且小易所在的世界没有除法,意味着表达式中没有/,只有(+, 
    - 和 *)。现在给出一个表达式,需要你帮忙计算出小易所在的世界这个表达式的值为多少 
      

    输入:

    输入为一行字符串,即一个表达式。其中运算符只有-,+,*。参与计算的数字只有0~9. 
    保证表达式都是合法的,排列规则如样例所示。

    输出:

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


     java代码:

    public class StrangeExpression {
        public static void main(String[] args) {
            String exp = "3+5*7+2/2" ;
            char [] exparr = exp.toCharArray();
        
            int result = (int)((exparr[0])-48) ;
    //        System.out.println( result ) ;
            for(int i = 1 ; i<exparr.length ; i=i+2 )
            {
                switch(exparr[i])
                {
                case '+' : result += (int)((exparr[i+1])-48) ; break ;
                case '-' : result -= (int)((exparr[i+1])-48) ; break ;
                case '*' : result *= (int)((exparr[i+1])-48) ; break ;
                case '/' : result /= (int)((exparr[i+1])-48) ; break ;
                }
                
            }
            System.out.println( result ) ;
        }
    
    }
  • 相关阅读:
    leetcode-14
    贪心算法
    MySQL索引
    leetcode-13
    leetcode-12
    leetcode-11
    深度和广度优先搜索
    CentOS出错You don't have permission to access on this server
    linux给文件或目录添加apache权限
    让CentOS在同一个窗口打开文件夹
  • 原文地址:https://www.cnblogs.com/rrttp/p/7923347.html
Copyright © 2020-2023  润新知