Analizador Lexico

Páginas: 3 (595 palabras) Publicado: 13 de mayo de 2012
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package Lexico;
import java.util.*;

/**
*
* @author Jorge Valverde Rebaza
*/

/** Analizador supervisa que la sintaxis de la expresión ingresada por el usuario
* sea la correcta
*/
public class Analizador {

private String entrada;
private int estado;public Analizador(String instruccion)
{
entrada = separador(instruccion); //preparamos la cadena
estado = 0;
}


public StringgetInstrucccion()
{
return entrada;
}


//analiza la cadena y devuelve true si es aceptada por el automata
//y false en caso contrario
public int getAnalisis(){
StringTokenizer linea = new StringTokenizer(entrada," ");;
String token;
estado = 0; //verificador de estados del automata
int cont = 0; //contador de parentesisboolean band=false,band2=false,flag=false;

while(linea.hasMoreTokens() && flag==false)
{
token= linea.nextToken();//automata
if(estado==0 && token.equalsIgnoreCase("("))
{ estado = 1; cont++; }
else if(estado==1 && Nfuncion(token)){ estado = 2; }
else if(estado==2 && (valor(token) || identificador(token)))
estado = 3;
else if(estado==3 && (valor(token) ||identificador(token)))
estado = 3;
else if(estado==4 && (valor(token) || identificador(token)))
estado = 3;
else if(estado==4 &&token.equalsIgnoreCase(")"))
{ estado = 4; cont--; }
else if(estado==4 && token.equalsIgnoreCase("("))
{ estado = 5; cont++; }
else...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Analizador Lexico
  • Analizador Lexico
  • Analizadores lexicos
  • Analizador Lexico
  • analizador lexico
  • Analizador Lexico
  • Analizador lexico
  • Analizador Lexico

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS