package analizador;
import java.io.*;
/**
*
* @author Miguel Falcon
*/
public class analizador {
public static void main(String args[]) throws IOException
{
String cadena;
try
{
BufferedReader n=new BufferedReader(new FileReader("C:/Users/Miguel Falcon/Desktop/cadenas.txt"));
while((cadena=n.readLine())!=null){
analizador(cadena);
}
}
catch(FileNotFoundException e)
{
System.out.println("No se encuentra el archivo");
}
}
public static void analizador(String palabra)
{
String cadena=palabra+'#';
int tam=cadena.length();
int matriz [][]=new int [5][4];
matriz [1][1]=2; matriz [1][2]=3; matriz [1][3]=90;
matriz [2][1]=2; matriz [2][2]=3; matriz [2][3]=100;
matriz [3][1]=2; matriz [3][2]=4; matriz [3][3]=100;
matriz [4][1]=4; matriz [4][2]=4; matriz [4][3]=90;
int fila=1, col=1;
try
{
for(int i=0;i
if(cadena.charAt(i)=='a')
{
col = 1;
fila = matriz[fila][col];
}
if(cadena.charAt(i)=='b')
{
col = 2;
fila = matriz[fila][col];
}
if(cadena.charAt(i)=='#')
{
cadena=palabra;
col = 3;
if(matriz[fila][col]==100)
System.out.println(cadena+"\tPalabra Aceptada");
else
System.out.println(cadena+"\tPalabra No Aceptada");
}
}
}catch(ArrayIndexOutOfBoundsException exc){}
}
}
Este es el codigo de la instanciacion de la clase que contiene el analizador
y el codigo del boton y las cajas de texto para dirigir las impresiones de las validaciones:
clase_applet app = new clase_applet();
jTextField2.setText(app.analizador(jTextField1.getText()));