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 Number obtemValor() { if (_expressaoString.substring(1,4).equals("ADI")) this=new FormulaADI(_expressaoString, _celula); if (_expressaoString.substring(1,4).equals("SUB")) this=new FormulaSUB(_expressaoString, _celula); if (_expressaoString.substring(1,4).equals("MUL")) this=new FormulaMUL(_expressaoString, _celula); if (_expressaoString.substring(1,4).equals("DIV")) this=new FormulaDIV(_expressaoString, _celula); if (_expressaoString.substring(1,4).equals("MED")) this=new FormulaMED(_expressaoString, _celula); if (_expressaoString.substring(1,5).equals("SOMA")) this=new FormulaSOMA(_expressaoString, _celula); if (_expressaoString.substring(1,4).equals("MAX")) this=new FormulaMAX(_expressaoString, _celula); return this.obtemValor(); } /** Metodo que diz se a expressao e' uma formula @return true porque a expressao e' uma formula **/ public boolean eFormula(){ return true; } }