import java.util.EmptyStackException; public class CalculatorModel { private Stack stack = new ArrayStack(); public void push( double d ) { stack.push( new Double( d ) ); } public double pop() throws EmptyStackException { return (( Double ) stack.pop()).doubleValue(); } public double div() throws EmptyStackException { double bot = pop(); double top = pop(); return top / bot; } public double mul() throws EmptyStackException { double r = pop(); double l = pop(); return l * r; } public double sub() throws EmptyStackException { double r = pop(); double l = pop(); return l - r; } public double add() throws EmptyStackException { double r = pop(); double l = pop(); return l + r; } public void clear() { stack.clear(); } public boolean isEmpty() { return stack.isEmpty(); } }