package swa.prakt3; public class Main { public static void main(String[] args) { ArithmeticVariable a = new ArithmeticVariable("a", 2); ArithmeticVariable b = new ArithmeticVariable("b", 77); ArithmeticVariable c = new ArithmeticVariable("c", 0.1); ArithmeticVariable d = new ArithmeticVariable("d", 0.00003); ArithmeticExpression aAddb = new ArithmeticAddition(a,b); ArithmeticExpression aSubc = new ArithmeticSubstraction(a,c); ArithmeticExpression bMuld = new ArithmeticMultiplication(b, d); ArithmeticExpression ae1 = new ArithmeticMultiplication(aAddb, aSubc); ArithmeticExpression ae2 = new ArithmeticSubstraction(bMuld, a); ArithmeticExpression root = new ArithmeticAddition(ae1, ae2); Iterator iter = new Iterator(); iter.traverse(root, new PrintVisitor()); System.out.println(); System.out.println(iter.traverse(root, new EvalVisitor())); } }