public void InicializarPila() //inicializa la pila y aplica el simbolo fin y el primer token no terminal de la gramatica, tambien coloca el nodo raiz que seria el primero de la gramatica { pila = new Stack(); pila.Push("$"); // fin de la pila pila.Push("PROG"); //no terminal inicial de la gramtica ll1 arbol = new CArbol(); raiz = arbol.Insertar("PROG", null); // inicializa el arbol , al ponerle null lo inicializa como raiz al nodo }
public List <String> EvalProgPrincipal(CArbol arbol) { listaMostrar = new List <String>(); mapaDatos = new Dictionary <String, Double>(); CNodo nodoEncontrado = arbol.Buscar(SENT, arbol.Raiz); if (nodoEncontrado != null) { EvalSentencia(nodoEncontrado.Hijo); if (nodoEncontrado.Hermano.Hermano.Hijo != null) { EvalProg(nodoEncontrado.Hermano.Hermano); } } return(listaMostrar); }