[C con Clase] necesito ayuda, urgente para mañana
Steven Davidson
steven en conclase.net
Sab Ene 13 01:50:04 CET 2007
Hola Anónimo,
El pasado 2007-01-12 23:07:50, anónimo escribió:
a> Hola necesito q me ayuden, tengo que hacer un programa con este bnf
a> S---->A/B/e
a> A----> abA/B/ab
a> B----> baB/A/ba
Sugiero implementar funciones para cada regla de producción. Por ejemplo,
enum estado_t { ESTADO_ERROR, ESTADO_S, ESTADO_A, ESTADO_B };
estado_t S( char *pszEntrada, int &indice_ref );
estado_t A( char *pszEntrada, int &indice_ref );
estado_t B( char *pszEntrada, int &indice_ref );
Según el estado en que nos encontramos, comprobamos si tal regla de producción es válida o no. También sugiero cambiar de BNF a EBNF. Por ejemplo,
A <-- {ab} | B
B <-- {ba} | A
Esto implicaría que la implementación consistiría de un bucle para {ab}.
Espero que esto te ayude.
Steven
Más información sobre la lista de distribución Cconclase