Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.BufferedReader;
- import java.io.InputStreamReader;
- import java.util.NoSuchElementException;
- import java.util.Stack;
- public class PostFixEvaluation {
- static int presmetaj(String s[]){
- Stack<String> stek = new Stack<String>();
- int a =0;
- int b =0;
- int rezultat = 0;
- for(int i = 0 ; i< s.length; i++){
- //System.out.println(stek+" stekce");
- if(s[i].equals("+") || s[i].equals("-") || s[i].equals("*") || s[i].equals("/")){
- // System.out.println("vleze vo if ");
- String znak = s[i];
- // System.out.println(znak+"znakce");
- a = Integer.parseInt(stek.pop());
- b = Integer.parseInt(stek.pop());
- // System.out.println(a+"<a "+b+"<b ");
- switch(znak){
- case"+": stek.push(Integer.toString(a+b));break;
- case"-": stek.push(Integer.toString(b-a));break;
- case"*": stek.push(Integer.toString(a*b));break;
- case"/": stek.push(Integer.toString(b/a));break;
- }
- // System.out.println(stek);
- }
- else stek.push(s[i]);
- }
- return rezultat=Integer.parseInt(stek.pop());
- }
- public static void main(String[] args) throws Exception{
- BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
- String expression = br.readLine();
- String exp[] = expression.split(" ");
- int rez = presmetaj(exp);
- System.out.println(rez);
- br.close();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement