package kalk; /** Class que representa uma formula @see Expressao */ public class Formula extends Expressao{ //CONSTRUTOR /** Construtor que recebe uma String coma formula a associar ao objecto **/ public Formula(String formula, Celula celula){ super(formula, celula); } public static Formula criarFormula (String formula, Celula celula) { if (formula.substring(1,4).equals("ADI")) return new FormulaADI(formula,celula); if (formula.substring(1,4).equals("SUB")) return new FormulaSUB(formula,celula); if (formula.substring(1,4).equals("MUL")) return new FormulaMUL(formula,celula); if (formula.substring(1,4).equals("DIV")) return new FormulaDIV(formula,celula); if (formula.substring(1,4).equals("MED")) return new FormulaMED(formula,celula); if (formula.substring(1,5).equals("SOMA")) return new FormulaSOMA(formula,celula); if (formula.substring(1,4).equals("MAX")) return new FormulaMAX(formula,celula); return null; // mudar isto para atirar uma excepçao! } /** Metodo que diz se a expressao e' uma formula @return true porque a expressao e' uma formula **/ public boolean eFormula(){ return true; }