Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Look up keyword
Like this
51Activity
0 of .
Results for:
No results containing your search query
P. 1
codigo java para transformador de afnd a afd

codigo java para transformador de afnd a afd

Ratings:

5.0

(1)
|Views: 4,821 |Likes:
Published by marymcpc20

More info:

Published by: marymcpc20 on Nov 09, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

09/22/2014

pdf

text

original

 
package Lenguaje.Formal.AFND2AFD.Modelo;import java.util.*;public class Automata {private String Nombre;private int numEstados;private int EstadoInicial;private int EstadoActual;private TreeSet<String> Alfabeto;private TreeSet<Integer> estadoFinal;private TreeSet<Integer>[][] TablaTransiciones;public Automata(){super();Alfabeto = new TreeSet<String>();estadoFinal = new TreeSet<Integer>();}public Automata(String nombre, int nEstados, TreeSet<String>alfabeto, int q0,TreeSet<Integer> qend, TreeSet<Integer>[][]tablaTransiciones) {super();Nombre = nombre;this.numEstados = nEstados;Alfabeto = alfabeto;this.EstadoInicial = q0;estadoFinal = qend;TablaTransiciones = tablaTransiciones;}public String getNombre() {return Nombre;}public void setNombre(String nombre) {Nombre = nombre;}public int getnumEstados() {return numEstados;}public void setnumEstados(int nEstados) {this.numEstados = nEstados;}public TreeSet<String> getAlfabeto() {return Alfabeto;}public void setAlfabeto(TreeSet<String> alfabeto) {Alfabeto = alfabeto;}public int getEstadoInicial() {return EstadoInicial;}
 
public void setEstadoInicial(int q0) {this.EstadoInicial = q0;}public TreeSet<Integer> getestadoFinal() {return estadoFinal;}public void setestadoFinal(TreeSet<Integer> qend) {estadoFinal = qend;}public TreeSet<Integer>[][] getTablaTransiciones() {return TablaTransiciones;}public void setTablaTransiciones(TreeSet<Integer>[][]tablaTransiciones) {TablaTransiciones = tablaTransiciones;}public void addEstadoFinal(int q){estadoFinal.add(q);}public int getEstadoActual(){return EstadoActual;}@SuppressWarnings("unchecked")public void addLetraAlfabeto(String letra){Alfabeto.add(letra);TablaTransiciones = new TreeSet[numEstados][Alfabeto.size()];iniciarTablaTransiciones();}private void iniciarTablaTransiciones(){for(int x=0;x<numEstados;x++){for(int y=0;y<Alfabeto.size();y++){TablaTransiciones[x][y]= new TreeSet<Integer>();}}}public void addTransicion(int q0, String e, int q1){Vector<String> a = new Vector<String>();a.addAll(Alfabeto);TablaTransiciones[q0][a.indexOf(e)].add(q1);}public boolean analizarPalabra(String palabra){EstadoActual = EstadoInicial;String[] letras = palabra.split("");for(String l:letras){if(!l.equals("")){
 
EstadoActual = funcion(EstadoActual,l);if(EstadoActual==-1)return false;}}if(estadoFinal.contains(EstadoActual))return true;return false;}private int funcion(int estadoActual, String e){Vector<String> a = new Vector<String>();a.addAll(Alfabeto);if(TablaTransiciones[estadoActual][a.indexOf(e)].isEmpty()){return -1;}else{returnTablaTransiciones[estadoActual][a.indexOf(e)].first();}}@Overridepublic String toString() {String cadena="";for (String string : Alfabeto) {cadena+=string+"\t";}cadena+="\n";for (int i = 0; i < TablaTransiciones.length; i++) {for (int j = 0; j < TablaTransiciones[i].length; j++) {cadena+=TablaTransiciones[i][j]+"\t";}cadena+="\n";}return cadena;}}package Lenguaje.Formal.AFND2AFD.Logica;

You're Reading a Free Preview

Download
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->