用split先按+-号断开,再各按*/号断开
import java.util.*;
public class Main{
public static int f(String str){
String[] v = str.split("[*/]");//先算乘除法
int r = Integer.valueOf(v[0]);
int k = v[0].length();//运算符的下标
for(int i = 1; i < v.length; ++i){
if(str.charAt(k) == '*') r *= Integer.valueOf(v[i]);
if(str.charAt(k) == '/') r /= Integer.valueOf(v[i]);
k += v[i].length() + 1;
}
return r;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(true){
String str = sc.nextLine();
if(str.equals("END")) break;
String[] v = str.split("[+-]");//再算加减法
int r = f(v[0]);
int k = v[0].length();//运算符的下标
for(int i = 1; i < v.length; ++i){
if(str.charAt(k) == '+') r += f(v[i]);
if(str.charAt(k) == '-') r -= f(v[i]);
k += v[i].length() + 1;
}
System.out.println(r);
}
}
}
京公网安备 11010502036488号