En esta ocasión les traigo la implementación de un AFD en lenguaje C++. Un autómata finito determinista es una quíntupla que denotaremos de manera genérica por M=(Q,Σ,q0,δ,F) , donde: Q es un conjunto finito cuyos elementos llamaremos estados. Σ es un alfabeto que llamamos alfabeto de entrada. q0∈Q es un estado señalado que llamamos estado inicial. F es un subconjunto de Q no vacío, cuyos elementos llamamos estados finales. δ es una aplicación de Q×Σ→Q , que llamamos función de transición. Para la implementación se utiliza una matriz de transición convirtiendo los símbolos y letras del alfabeto en indices de la matriz donde los estados son las FILAS y los símbolos son las COLUMNAS, por ejemplo: Tenemos un alfabeto Σ = {a, b, c}, entonces en la matriz de transición tomara la letra 'a' como indice 0 , letra 'b' indice 1 y letra 'c' indice 2. Lo mismo seria para las transiciones, pero allí no interesa que letra representa si no cuantos estados...
Gracias Justo lo q buscaba de forma cencilla...
ResponderEliminar¡Muchas gracias! Me funcionó para lo que necesitaba. Sólo tengo una duda, ¿qué papel desempeña cout.flush() en este código?
ResponderEliminardisculpa no tienes uno, con el ciclo for? en lugar del ciclo while?
ResponderEliminarCon ese código y este se podría llegar a hacer un excelente programa : http://www.programadortico.com/2013/06/login-en-dev-c-con-archivos-modo-consola.html
ResponderEliminargracias loco sigue asi no le agas caso a este par pendejos q no merecen ni tocar una computadora ,solo valida el dato q recibes
ResponderEliminarExcelente aporte, muchas gracias
ResponderEliminarmuchas gracias master!
ResponderEliminarExcelente es lo que buscaba
ResponderEliminar