Skip to content

Commit 78dfb95

Browse files
Update AnalizadorSintactico.cpp
1 parent 760f9a7 commit 78dfb95

File tree

1 file changed

+41
-42
lines changed

1 file changed

+41
-42
lines changed

Sources/src/AnalizadorSintactico.cpp

Lines changed: 41 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -14,48 +14,48 @@ AnalizadorSintactico::~AnalizadorSintactico()
1414
}
1515

1616
void AnalizadorSintactico::declarar() {
17-
mapa["repetir"]=Token(44,"Estructura de control");
18-
mapa["mientras"]=Token(45,"Estructura de control");
19-
mapa["si"]=Token(41,"Estructura de control");
20-
mapa["sino"]=Token(42,"Estructura de control");
21-
mapa["trastrueco"]=Token(43,"Estructura de control");
17+
mapa["repetir"]=Token(44,"Estructura de control","repetir");
18+
mapa["mientras"]=Token(45,"Estructura de control","mientras");
19+
mapa["si"]=Token(41,"Estructura de control","si");
20+
mapa["sino"]=Token(42,"Estructura de control","sino");
21+
mapa["trastrueco"]=Token(43,"Estructura de control","transtrueco");
2222

23-
mapa["true"]=Token(32,"Verdadero");
24-
mapa["false"]=Token(33,"Falso");
23+
mapa["verdadero"]=Token(32,"Verdadero","verdadero");
24+
mapa["falso"]=Token(33,"Falso","falso");
2525

26-
mapa["entero"]=Token(20,"Identificador");
27-
mapa["boleano"]=Token(22,"Identificador");
28-
mapa["flotante"]=Token(21,"Identificador");
29-
mapa["cadena"]=Token(23,"Identificador");
26+
mapa["entero"]=Token(20,"Tipo de dato","entero");
27+
mapa["boleano"]=Token(22,"Tipo de dato","boleano");
28+
mapa["flotante"]=Token(21,"Tipo de dato","flotante");
29+
mapa["cadena"]=Token(23,"Tipo de dato","cadena");
3030

31-
mapa["imprimir"]=Token(1,"Identificador");
32-
mapa["leer"]=Token(2,"Identificador");
31+
mapa["imprimir"]=Token(1,"Identificador","imprimir");
32+
mapa["leer"]=Token(2,"Identificador","leer");
3333

34-
mapa["+"]=Token(7,"Operador Aritmetico");
35-
mapa["-"]=Token(7,"Operador Aritmetico");
36-
mapa["*"]=Token(7,"Operador Aritmetico");
37-
mapa["/"]=Token(7,"Operador Aritmetico");
38-
mapa["="]=Token(6,"Operador Logico");
39-
mapa["<"]=Token(6,"Operador Logico");
40-
mapa[">"]=Token(6,"Operador Logico");
41-
mapa["!"]=Token(6,"Operador Logico");
42-
mapa["&"]=Token(7,"Operador Aritmetico");
43-
mapa["|"]=Token(7,"Operador Aritmetico");
44-
mapa["^"]=Token(7,"Operador Aritmetico");
45-
mapa["&&"]=Token(6,"Operador Logico");
46-
mapa["||"]=Token(6,"Operador Logico");
47-
mapa["=="]=Token(8,"Operador Relacional");
48-
mapa[">="]=Token(8,"Operador Relacional");
49-
mapa["<="]=Token(8,"Operador Relacional");
50-
mapa["!="]=Token(8,"Operador Relacional");
51-
mapa[":"]=Token(8,"Operador Relacional");
34+
mapa["+"]=Token(7,"Operador Aritmetico","+");
35+
mapa["-"]=Token(7,"Operador Aritmetico","-");
36+
mapa["*"]=Token(7,"Operador Aritmetico","*");
37+
mapa["/"]=Token(7,"Operador Aritmetico","/");
38+
mapa["="]=Token(6,"Operador Logico","=");
39+
mapa["<"]=Token(6,"Operador Logico","<");
40+
mapa[">"]=Token(6,"Operador Logico",">");
41+
mapa["!"]=Token(6,"Operador Logico","!");
42+
mapa["&"]=Token(7,"Operador Aritmetico","&");
43+
mapa["|"]=Token(7,"Operador Aritmetico","|");
44+
mapa["^"]=Token(7,"Operador Aritmetico","^");
45+
mapa["&&"]=Token(6,"Operador Logico","&&");
46+
mapa["||"]=Token(6,"Operador Logico","||");
47+
mapa["=="]=Token(8,"Operador Relacional","==");
48+
mapa[">="]=Token(8,"Operador Relacional",">=");
49+
mapa["<="]=Token(8,"Operador Relacional","<=);
50+
mapa["!="]=Token(8,"Operador Relacional","!=");
51+
mapa[":"]=Token(8,"Operador Relacional",":");
5252
53-
mapa[";"]=Token(5,"Agrupación");
53+
mapa[";"]=Token(5,"Agrupación",";");
5454
55-
mapa["("] = Token(5,"Agrupacion");
56-
mapa[")"] = Token(5,"Agrupacion");
57-
mapa["{"] = Token(5,"Agrupacion");
58-
mapa["}"] = Token(5,"Agrupacion");
55+
mapa["("] = Token(5,"Agrupacion"."(");
56+
mapa[")"] = Token(5,"Agrupacion",")");
57+
mapa["{"] = Token(5,"Agrupacion","{");
58+
mapa["}"] = Token(5,"Agrupacion","}");
5959
}
6060
6161
void AnalizadorSintactico::AnalizadorLexico(){
@@ -68,11 +68,10 @@ void AnalizadorSintactico::AnalizadorLexico(){
6868
{
6969
if (s[0]=='"')
7070
{
71-
for(int i=1;i<s.length();i++){
72-
if(s.at(i)!='"'){
73-
pal = pal+s.at(i);
74-
}
75-
}
71+
bool wii=true;
72+
for(int i=1;i<s.length()-1;i++)
73+
if (s[i]=='"') wii=false;
74+
if (s[s.size()-1]!='"') wii=false;
7675
cout<< pal << " - "<< "String"<<endl;
7776
7877
}
@@ -90,7 +89,7 @@ void AnalizadorSintactico::AnalizadorLexico(){
9089
for(int i=1;i<s.length();i++)
9190
if (!((s[i]>='0' && s[i]<='9') || s[i]!='.')) wii=false;
9291
for(int i=0;i<s.length();i++)
93-
if(s.at(i)=='.') err++;
92+
if(s[i]=='.') err++;
9493
if (wii)
9594
{
9695
if(err==0){

0 commit comments

Comments
 (0)