Buenas,
Viendo el video de resolución del ejercicio 7 sobre notaciones me quedaron algunas dudas del TAD lexema.
Por un lado, no me quedan claras las operaciones crearLexema. Por ejemplo, según la especificación que se presenta, crearLexemaNumero parece no tomar ninguna entrada y devolver un lexema. ¿No debería tomar un número de entrada? Lo mismo para crearLexemaOperador y crearLexemaDelimitador. Capaz estoy entendiendo mal esas operaciones.
Por otro lado, si bien me queda claro cómo el TAD facilita las operaciones in2pos y evalPosfija al no tener que trabajar con chars, ¿no agrega una dificultad similar al tener que "transformar" la expresión infija de entrada de chars a cola de lexemas?
Por último, quería saber si la siguiente implementación tiene sentido para el TAD lexemas:
typedef int Numero;
typedef char Operador;
typedef char Delimitador;
union Expresion {
Numero val;
Operador op;
Delimitador delim;
};
enum TipoExpr {esNum, esOp, esDelim};
struct TLexema {
Expresion exp;
TipoExpr tipo;
};
typedef TLexema * Lexema;
Gracias!