SIMPLEX.LEX



/* SIMPLIFICADOR DE EXPRESIONES MATEMATICAS */
/* ==================================================*/
/* === Programa:    1.lex                         ===*/
/* === TEcnica:     Dirigida por la sintAxis       ===*/
/* === Programador: J. Rafael R. ochoa            ===*/
/* ==================================================*/

%{
#include "y.tab.h"
%}

let                    [a-zA-Z0-9_-]
dig                    [0-9]
entero                 ({dig}+)
variable               ([x]|[X])
todo                   ({let}+)

%%
"+"                    {return MAS; }
"*"                    {return POR; }
"("                    {return LEFT; }
")"                    {return RIGHT; }
"\n"                   {return LINEA; }
{variable}             { sprintf(yylval.cadena, "%s",yytext);
                         return VAR;
                       }
{entero}               { sprintf(yylval.cadena, "%s",yytext);
                         return NUM;}
.                      {;}
%%

int yywrap()  { return(1); }