borovaneca

Simple Calculator

Jan 26th, 2023
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.06 KB | None | 0 0
  1. package Advance.StacksAndQueues;
  2.  
  3. import java.util.ArrayDeque;
  4. import java.util.Scanner;
  5.  
  6. public class SimpleCalculator {
  7.     public static void main(String[] args) {
  8.         Scanner scanner = new Scanner(System.in);
  9.  
  10.  
  11.         String input = scanner.nextLine();
  12.         String[] inputArr = input.split(" ");
  13.         ArrayDeque<Integer> stack = new ArrayDeque<>();
  14.         String operator = null;
  15.         for (String item : inputArr){
  16.  
  17.             if (item.equals("+") || item.equals("-")){
  18.                 operator = item;
  19.             } else if (stack.isEmpty()){
  20.                 stack.push(Integer.parseInt(item));
  21.             } else {
  22.                 int currentNumber = Integer.parseInt(item);
  23.                 int lasNumber = stack.peek();
  24.                 stack.pop();
  25.                 if (operator.equals("+")){
  26.                     stack.push(currentNumber + lasNumber);
  27.                 } else {
  28.                     stack.push(lasNumber - currentNumber);
  29.                 }
  30.             }
  31.         }
  32.         System.out.println(stack.peek());
  33.     }
  34. }
  35.  
Advertisement
Add Comment
Please, Sign In to add comment