import operators.*;
import expressions.*;
import printing.Printable;

public class Calculator {

    public static void main(String[] args) {
        
        Operator x_op = new Plus();
        
        Expression x_exp = new BinaryExpression( new Plus() , new Value(3) , new Value(12) );
        Expression x_exp2 = new BinaryExpression( new Times() , new Value(4) , new Value(2) );
        Expression x_exp3 = new BinaryExpression( new Plus() , x_exp , x_exp2 );
        
        Printable pr = new BinaryExpression( new Plus() , x_exp , x_exp2 );
        pr.show();
        System.out.println( " = " + x_exp3.evaluate() );
    }
}