/** * calcula qual o elemento de uma expressão que dá erro * * @param elem expressão * @param memory vector de memória * @return o elemento que dá erro */ public static String ErrorExpression(String elem, Vector memory) { String exp = ReplaceVariablesToDefaults(elem, memory); IteratorExpression it = new IteratorExpression(exp); while (it.hasMoreElements()) { if (!Calculator.IsCalculus(it.current())) return it.current(); it.next(); } return "NO ERROR"; }
/** * verifica se uma expressão é aceitavel de acordo com o vectro de memória * * @param express expressão * @param memory vector de memória * @return verdadeiro se for uma expressão aceitável */ public static boolean IsExpression(String express, Vector memory) { String exp = ReplaceVariablesToDefaults(express, memory); IteratorExpression it = new IteratorExpression(exp); while (it.hasMoreElements()) { String elem = it.current(); if (!elem.equals("(") && !elem.equals(")") && !elem.equals(",") && !Calculator.IsCalculus(elem) && !Values.IsValue(elem)) return false; it.next(); } return true; }