una opción medio fácil de realizar para convertir un autómata a programa es más o menos así en pseudoc:
Después de ese ciclo solo haces un if para ver que el estado en que se terminó es un estado de aceptación. ERROR() puede ser un simple break.
Para simplificar las cosas puedes pasar todo a minúsculas primero y puedes quitar algunas cosas de tu analisis si lo deseas, por ejemplo el http:// lo puedes verificar con alguna función de string.h y empezar con i=7.
Edito:
Este código representaría un autómata donde q1 es el estado inicial. Desde el estado q1 si se lee una h se va al estado q2, y si se lee una w se queda en el estado q1...
Código (c) [Seleccionar]
i=0;
estado = 1;
while(cadena[i] != 0){
if(estado == 1){
if(cadena[i] == 'h') estado = 2;
else if(cadena[i] == 'w') estado = 1;
...
else ERROR();
}
if(estado == 2){
...
}
...
i++;
}
Después de ese ciclo solo haces un if para ver que el estado en que se terminó es un estado de aceptación. ERROR() puede ser un simple break.
Para simplificar las cosas puedes pasar todo a minúsculas primero y puedes quitar algunas cosas de tu analisis si lo deseas, por ejemplo el http:// lo puedes verificar con alguna función de string.h y empezar con i=7.
Edito:
Este código representaría un autómata donde q1 es el estado inicial. Desde el estado q1 si se lee una h se va al estado q2, y si se lee una w se queda en el estado q1...