示例#1
0
        private void Arbol_Load(object sender, EventArgs e)
        {
            ParseTreeNode resultado = Sintactico.AnalizarDecimal(cadenaExpresion);

            if (resultado != null)
            {
                label1.Text       = "correcta";
                pictureBox1.Image = Sintactico.getImage(resultado);
                Recorrido.resolverOperacionDecimal(resultado);
            }
            else
            {
                label1.Text = "incorrecta";
            }
        }
示例#2
0
        public void ValidarValores()
        {
            erroresSemantica = new List <string>();
            ParseTreeNode resultado;

            if (rtxterrores.Text == "Análisis exitoso!!")
            {
                foreach (Dato d in listaDatos)
                {
                    if (d.Tipo.Equals("int"))
                    {
                        resultado = Sintactico.AnalizarEnteros(d.Valor);
                        if (resultado != null)
                        {
                            d.Valor = Recorrido.resolverOperacionEntero(resultado).ToString();
                        }
                        else
                        {
                            erroresSemantica.Add(d.Identificador);
                        }
                    }

                    if (d.Tipo.Equals("float") || d.Tipo.Equals("double"))
                    {
                        resultado = Sintactico.AnalizarDecimal(d.Valor);
                        if (resultado != null)
                        {
                            d.Valor = Recorrido.resolverOperacionDecimal(resultado).ToString();
                        }
                        else
                        {
                            erroresSemantica.Add(d.Identificador);
                        }
                    }
                }
            }
        }