Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.BufferedReader;
- import java.io.InputStreamReader;
- public class ArithmeticExpression {
- static int operate(int op, int op2, char op3) {
- if (op3 =='+')
- return op + op2;
- else
- return op - op2;
- }
- static int presmetaj(char c[], int l, int r) {
- if (r - l ==4)
- return operate(c[l+1]-'0',c[l+3]-'0',c[l+2]);
- int flag =0;
- int i=l;
- while ((c[i] != '+'&&c[i] != '-') || flag !=1){
- if (c[i] == '(')
- flag++;
- else if (c[i] == ')')
- flag--;
- ++i;
- }
- return operate(presmetaj(c,l+1,i-1),presmetaj(c,i+1,r-1),c[i]);
- }
- public static void main(String[] args) throws Exception {
- int i,j,k;
- BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
- String expression = br.readLine();
- char exp[] = expression.toCharArray();
- int rez = presmetaj(exp, 0, exp.length-1);
- System.out.println(rez);
- br.close();
- }
- }
Add Comment
Please, Sign In to add comment