Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Estado 107 conflictos: 1 desplazamiento(s)/reducción(ones)
- Gramática
- 0 $accept: START $end
- 1 START: PROGRAM ID SEPARADOR_SENTENCIA zona_declaracion_constantes zona_declaracion_variables bloque ENDPROGRAM
- 2 zona_declaracion_variables: DEFINE conjunto_definiciones ENDDEFINE
- 3 zona_declaracion_constantes: CONST constantes ENDCONST
- 4 constantes: constantes SEPARADOR_SENTENCIA const
- 5 | const SEPARADOR_SENTENCIA
- 6 const: declaracion_const_reales
- 7 | declaracion_const_int
- 8 | declaracion_const_str
- 9 declaracion_const_str: STRING ID OPERADOR_ASIGNACION literal_string
- 10 declaracion_const_reales: REAL ID OPERADOR_ASIGNACION literal_real
- 11 declaracion_const_int: INTEGER ID OPERADOR_ASIGNACION literal_entero
- 12 conjunto_definiciones: conjunto_definiciones definiciones
- 13 | definiciones
- 14 seleccion: IF condicion DO bloque ELSE bloque ENDIF
- 15 condicion: comparacion OPERADOR_LOGICO comparacion
- 16 | OPERADOR_NEGACION comparacion
- 17 | comparacion
- 18 | comparacion OPERADOR_LOGICO OPERADOR_NEGACION comparacion
- 19 comparacion: expresion OPERADOR_MAYOR expresion
- 20 | expresion OPERADOR_MENOR expresion
- 21 | expresion OPERADOR_MAYORIGUAL expresion
- 22 | expresion OPERADOR_MENORIGUAL expresion
- 23 | expresion OPERADOR_DISTINTO expresion
- 24 | expresion OPERADOR_IGUAL expresion
- 25 expresion: expresion OPERADOR_SUMA termino
- 26 | expresion OPERADOR_RESTA termino
- 27 | termino
- 28 termino: termino OPERADOR_MULTIPLICACION factor
- 29 | termino OPERADOR_DIVISION factor
- 30 | factor
- 31 factor: ID
- 32 | literal_entero
- 33 | literal_real
- 34 | PARENTESIS_ABRE expresion PARENTESIS_CIERRA
- 35 iteracion_condicional: WHILE condicion DO bloque ENDWHILE
- 36 bloque: sentencia SEPARADOR_SENTENCIA
- 37 | bloque sentencia SEPARADOR_SENTENCIA
- 38 sentencia: asignacion
- 39 | estructura_control
- 40 | salida
- 41 | comentario
- 42 comentario: APERTURA_COMENTARIO literal_string CIERRE_COMENTARIO
- 43 estructura_control: seleccion
- 44 | iteracion_condicional
- 45 asignacion: ID OPERADOR_ASIGNACION concatenacion
- 46 | ID OPERADOR_ASIGNACION expresion
- 47 | ID OPERADOR_ASIGNACION literal_string
- 48 concatenacion: ID OPERADOR_SUMA ID
- 49 | ID OPERADOR_SUMA literal_string
- 50 | literal_string OPERADOR_SUMA ID
- 51 | literal_string OPERADOR_SUMA literal_string
- 52 literal_string: COMILLA CONST_STR COMILLA
- 53 literal_real: signo numero_int SEPARADOR_DECIMALES numero_int
- 54 | signo SEPARADOR_DECIMALES numero_int
- 55 | signo numero_int SEPARADOR_DECIMALES
- 56 literal_entero: signo numero_int
- 57 numero_int: CONST_INT
- 58 signo: OPERADOR_RESTA
- 59 definiciones: definicion_string
- 60 | definicion_entero
- 61 | definicion_real
- 62 definicion_string: STRING DOSPUNTOS iteracion_id SEPARADOR_SENTENCIA
- 63 definicion_entero: INTEGER DOSPUNTOS iteracion_id SEPARADOR_SENTENCIA
- 64 definicion_real: REAL DOSPUNTOS iteracion_id SEPARADOR_SENTENCIA
- 65 iteracion_id: ID
- 66 | ID SEPARADOR_IDENTIFICADORES iteracion_id
- 67 salida: DISPLAY PARENTESIS_ABRE ID PARENTESIS_CIERRA
- 68 | DISPLAY PARENTESIS_ABRE literal_entero PARENTESIS_CIERRA
- 69 | DISPLAY PARENTESIS_ABRE literal_real PARENTESIS_CIERRA
- 70 | DISPLAY PARENTESIS_ABRE literal_string PARENTESIS_CIERRA
- Terminales con las reglas donde aparecen
- $end (0) 0
- error (256)
- PROGRAM (258) 1
- DEFINE (259) 2
- ENDDEFINE (260) 2
- CONST_STR (261) 52
- REAL (262) 10 64
- CONST_INT (263) 57
- INTEGER (264) 11 63
- STRING (265) 9 62
- IF (266) 14
- DO (267) 14 35
- ELSE (268) 14
- ENDIF (269) 14
- WHILE (270) 35
- ENDWHILE (271) 35
- ENDPROGRAM (272) 1
- CONST (273) 3
- ENDCONST (274) 3
- OPERADOR_NEGACION (275) 16 18
- OPERADOR_LOGICO (276) 15 18
- OPERADOR_ASIGNACION (277) 9 10 11 45 46 47
- OPERADOR_MAYOR (278) 19
- OPERADOR_MENOR (279) 20
- OPERADOR_IGUAL (280) 24
- OPERADOR_MENORIGUAL (281) 22
- OPERADOR_MAYORIGUAL (282) 21
- OPERADOR_DISTINTO (283) 23
- OPERADOR_SUMA (284) 25 48 49 50 51
- OPERADOR_RESTA (285) 26 58
- OPERADOR_MULTIPLICACION (286) 28
- OPERADOR_DIVISION (287) 29
- SEPARADOR_DECIMALES (288) 53 54 55
- SEPARADOR_IDENTIFICADORES (289) 66
- SEPARADOR_SENTENCIA (290) 1 4 5 36 37 62 63 64
- PARENTESIS_ABRE (291) 34 67 68 69 70
- PARENTESIS_CIERRA (292) 34 67 68 69 70
- APERTURA_COMENTARIO (293) 42
- CIERRE_COMENTARIO (294) 42
- DOSPUNTOS (295) 62 63 64
- DISPLAY (296) 67 68 69 70
- COMILLA (297) 52
- ID (298) 1 9 10 11 31 45 46 47 48 49 50 65 66 67
- No terminales con las reglas donde aparecen
- $accept (44)
- en la izquierda: 0
- START (45)
- en la izquierda: 1, en la derecha: 0
- zona_declaracion_variables (46)
- en la izquierda: 2, en la derecha: 1
- zona_declaracion_constantes (47)
- en la izquierda: 3, en la derecha: 1
- constantes (48)
- en la izquierda: 4 5, en la derecha: 3 4
- const (49)
- en la izquierda: 6 7 8, en la derecha: 4 5
- declaracion_const_str (50)
- en la izquierda: 9, en la derecha: 8
- declaracion_const_reales (51)
- en la izquierda: 10, en la derecha: 6
- declaracion_const_int (52)
- en la izquierda: 11, en la derecha: 7
- conjunto_definiciones (53)
- en la izquierda: 12 13, en la derecha: 2 12
- seleccion (54)
- en la izquierda: 14, en la derecha: 43
- condicion (55)
- en la izquierda: 15 16 17 18, en la derecha: 14 35
- comparacion (56)
- en la izquierda: 19 20 21 22 23 24, en la derecha: 15 16 17 18
- expresion (57)
- en la izquierda: 25 26 27, en la derecha: 19 20 21 22 23 24 25
- 26 34 46
- termino (58)
- en la izquierda: 28 29 30, en la derecha: 25 26 27 28 29
- factor (59)
- en la izquierda: 31 32 33 34, en la derecha: 28 29 30
- iteracion_condicional (60)
- en la izquierda: 35, en la derecha: 44
- bloque (61)
- en la izquierda: 36 37, en la derecha: 1 14 35 37
- sentencia (62)
- en la izquierda: 38 39 40 41, en la derecha: 36 37
- comentario (63)
- en la izquierda: 42, en la derecha: 41
- estructura_control (64)
- en la izquierda: 43 44, en la derecha: 39
- asignacion (65)
- en la izquierda: 45 46 47, en la derecha: 38
- concatenacion (66)
- en la izquierda: 48 49 50 51, en la derecha: 45
- literal_string (67)
- en la izquierda: 52, en la derecha: 9 42 47 49 50 51 70
- literal_real (68)
- en la izquierda: 53 54 55, en la derecha: 10 33 69
- literal_entero (69)
- en la izquierda: 56, en la derecha: 11 32 68
- numero_int (70)
- en la izquierda: 57, en la derecha: 53 54 55 56
- signo (71)
- en la izquierda: 58, en la derecha: 53 54 55 56
- definiciones (72)
- en la izquierda: 59 60 61, en la derecha: 12 13
- definicion_string (73)
- en la izquierda: 62, en la derecha: 59
- definicion_entero (74)
- en la izquierda: 63, en la derecha: 60
- definicion_real (75)
- en la izquierda: 64, en la derecha: 61
- iteracion_id (76)
- en la izquierda: 65 66, en la derecha: 62 63 64 66
- salida (77)
- en la izquierda: 67 68 69 70, en la derecha: 40
- estado 0
- 0 $accept: . START $end
- PROGRAM desplazar e ir al estado 1
- START ir al estado 2
- estado 1
- 1 START: PROGRAM . ID SEPARADOR_SENTENCIA zona_declaracion_constantes zona_declaracion_variables bloque ENDPROGRAM
- ID desplazar e ir al estado 3
- estado 2
- 0 $accept: START . $end
- $end desplazar e ir al estado 4
- estado 3
- 1 START: PROGRAM ID . SEPARADOR_SENTENCIA zona_declaracion_constantes zona_declaracion_variables bloque ENDPROGRAM
- SEPARADOR_SENTENCIA desplazar e ir al estado 5
- estado 4
- 0 $accept: START $end .
- $default aceptar
- estado 5
- 1 START: PROGRAM ID SEPARADOR_SENTENCIA . zona_declaracion_constantes zona_declaracion_variables bloque ENDPROGRAM
- CONST desplazar e ir al estado 6
- zona_declaracion_constantes ir al estado 7
- estado 6
- 3 zona_declaracion_constantes: CONST . constantes ENDCONST
- REAL desplazar e ir al estado 8
- INTEGER desplazar e ir al estado 9
- STRING desplazar e ir al estado 10
- constantes ir al estado 11
- const ir al estado 12
- declaracion_const_str ir al estado 13
- declaracion_const_reales ir al estado 14
- declaracion_const_int ir al estado 15
- estado 7
- 1 START: PROGRAM ID SEPARADOR_SENTENCIA zona_declaracion_constantes . zona_declaracion_variables bloque ENDPROGRAM
- DEFINE desplazar e ir al estado 16
- zona_declaracion_variables ir al estado 17
- estado 8
- 10 declaracion_const_reales: REAL . ID OPERADOR_ASIGNACION literal_real
- ID desplazar e ir al estado 18
- estado 9
- 11 declaracion_const_int: INTEGER . ID OPERADOR_ASIGNACION literal_entero
- ID desplazar e ir al estado 19
- estado 10
- 9 declaracion_const_str: STRING . ID OPERADOR_ASIGNACION literal_string
- ID desplazar e ir al estado 20
- estado 11
- 3 zona_declaracion_constantes: CONST constantes . ENDCONST
- 4 constantes: constantes . SEPARADOR_SENTENCIA const
- ENDCONST desplazar e ir al estado 21
- SEPARADOR_SENTENCIA desplazar e ir al estado 22
- estado 12
- 5 constantes: const . SEPARADOR_SENTENCIA
- SEPARADOR_SENTENCIA desplazar e ir al estado 23
- estado 13
- 8 const: declaracion_const_str .
- $default reduce usando la regla 8 (const)
- estado 14
- 6 const: declaracion_const_reales .
- $default reduce usando la regla 6 (const)
- estado 15
- 7 const: declaracion_const_int .
- $default reduce usando la regla 7 (const)
- estado 16
- 2 zona_declaracion_variables: DEFINE . conjunto_definiciones ENDDEFINE
- REAL desplazar e ir al estado 24
- INTEGER desplazar e ir al estado 25
- STRING desplazar e ir al estado 26
- conjunto_definiciones ir al estado 27
- definiciones ir al estado 28
- definicion_string ir al estado 29
- definicion_entero ir al estado 30
- definicion_real ir al estado 31
- estado 17
- 1 START: PROGRAM ID SEPARADOR_SENTENCIA zona_declaracion_constantes zona_declaracion_variables . bloque ENDPROGRAM
- IF desplazar e ir al estado 32
- WHILE desplazar e ir al estado 33
- APERTURA_COMENTARIO desplazar e ir al estado 34
- DISPLAY desplazar e ir al estado 35
- ID desplazar e ir al estado 36
- seleccion ir al estado 37
- iteracion_condicional ir al estado 38
- bloque ir al estado 39
- sentencia ir al estado 40
- comentario ir al estado 41
- estructura_control ir al estado 42
- asignacion ir al estado 43
- salida ir al estado 44
- estado 18
- 10 declaracion_const_reales: REAL ID . OPERADOR_ASIGNACION literal_real
- OPERADOR_ASIGNACION desplazar e ir al estado 45
- estado 19
- 11 declaracion_const_int: INTEGER ID . OPERADOR_ASIGNACION literal_entero
- OPERADOR_ASIGNACION desplazar e ir al estado 46
- estado 20
- 9 declaracion_const_str: STRING ID . OPERADOR_ASIGNACION literal_string
- OPERADOR_ASIGNACION desplazar e ir al estado 47
- estado 21
- 3 zona_declaracion_constantes: CONST constantes ENDCONST .
- $default reduce usando la regla 3 (zona_declaracion_constantes)
- estado 22
- 4 constantes: constantes SEPARADOR_SENTENCIA . const
- REAL desplazar e ir al estado 8
- INTEGER desplazar e ir al estado 9
- STRING desplazar e ir al estado 10
- const ir al estado 48
- declaracion_const_str ir al estado 13
- declaracion_const_reales ir al estado 14
- declaracion_const_int ir al estado 15
- estado 23
- 5 constantes: const SEPARADOR_SENTENCIA .
- $default reduce usando la regla 5 (constantes)
- estado 24
- 64 definicion_real: REAL . DOSPUNTOS iteracion_id SEPARADOR_SENTENCIA
- DOSPUNTOS desplazar e ir al estado 49
- estado 25
- 63 definicion_entero: INTEGER . DOSPUNTOS iteracion_id SEPARADOR_SENTENCIA
- DOSPUNTOS desplazar e ir al estado 50
- estado 26
- 62 definicion_string: STRING . DOSPUNTOS iteracion_id SEPARADOR_SENTENCIA
- DOSPUNTOS desplazar e ir al estado 51
- estado 27
- 2 zona_declaracion_variables: DEFINE conjunto_definiciones . ENDDEFINE
- 12 conjunto_definiciones: conjunto_definiciones . definiciones
- ENDDEFINE desplazar e ir al estado 52
- REAL desplazar e ir al estado 24
- INTEGER desplazar e ir al estado 25
- STRING desplazar e ir al estado 26
- definiciones ir al estado 53
- definicion_string ir al estado 29
- definicion_entero ir al estado 30
- definicion_real ir al estado 31
- estado 28
- 13 conjunto_definiciones: definiciones .
- $default reduce usando la regla 13 (conjunto_definiciones)
- estado 29
- 59 definiciones: definicion_string .
- $default reduce usando la regla 59 (definiciones)
- estado 30
- 60 definiciones: definicion_entero .
- $default reduce usando la regla 60 (definiciones)
- estado 31
- 61 definiciones: definicion_real .
- $default reduce usando la regla 61 (definiciones)
- estado 32
- 14 seleccion: IF . condicion DO bloque ELSE bloque ENDIF
- OPERADOR_NEGACION desplazar e ir al estado 54
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- condicion ir al estado 58
- comparacion ir al estado 59
- expresion ir al estado 60
- termino ir al estado 61
- factor ir al estado 62
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 33
- 35 iteracion_condicional: WHILE . condicion DO bloque ENDWHILE
- OPERADOR_NEGACION desplazar e ir al estado 54
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- condicion ir al estado 66
- comparacion ir al estado 59
- expresion ir al estado 60
- termino ir al estado 61
- factor ir al estado 62
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 34
- 42 comentario: APERTURA_COMENTARIO . literal_string CIERRE_COMENTARIO
- COMILLA desplazar e ir al estado 67
- literal_string ir al estado 68
- estado 35
- 67 salida: DISPLAY . PARENTESIS_ABRE ID PARENTESIS_CIERRA
- 68 | DISPLAY . PARENTESIS_ABRE literal_entero PARENTESIS_CIERRA
- 69 | DISPLAY . PARENTESIS_ABRE literal_real PARENTESIS_CIERRA
- 70 | DISPLAY . PARENTESIS_ABRE literal_string PARENTESIS_CIERRA
- PARENTESIS_ABRE desplazar e ir al estado 69
- estado 36
- 45 asignacion: ID . OPERADOR_ASIGNACION concatenacion
- 46 | ID . OPERADOR_ASIGNACION expresion
- 47 | ID . OPERADOR_ASIGNACION literal_string
- OPERADOR_ASIGNACION desplazar e ir al estado 70
- estado 37
- 43 estructura_control: seleccion .
- $default reduce usando la regla 43 (estructura_control)
- estado 38
- 44 estructura_control: iteracion_condicional .
- $default reduce usando la regla 44 (estructura_control)
- estado 39
- 1 START: PROGRAM ID SEPARADOR_SENTENCIA zona_declaracion_constantes zona_declaracion_variables bloque . ENDPROGRAM
- 37 bloque: bloque . sentencia SEPARADOR_SENTENCIA
- IF desplazar e ir al estado 32
- WHILE desplazar e ir al estado 33
- ENDPROGRAM desplazar e ir al estado 71
- APERTURA_COMENTARIO desplazar e ir al estado 34
- DISPLAY desplazar e ir al estado 35
- ID desplazar e ir al estado 36
- seleccion ir al estado 37
- iteracion_condicional ir al estado 38
- sentencia ir al estado 72
- comentario ir al estado 41
- estructura_control ir al estado 42
- asignacion ir al estado 43
- salida ir al estado 44
- estado 40
- 36 bloque: sentencia . SEPARADOR_SENTENCIA
- SEPARADOR_SENTENCIA desplazar e ir al estado 73
- estado 41
- 41 sentencia: comentario .
- $default reduce usando la regla 41 (sentencia)
- estado 42
- 39 sentencia: estructura_control .
- $default reduce usando la regla 39 (sentencia)
- estado 43
- 38 sentencia: asignacion .
- $default reduce usando la regla 38 (sentencia)
- estado 44
- 40 sentencia: salida .
- $default reduce usando la regla 40 (sentencia)
- estado 45
- 10 declaracion_const_reales: REAL ID OPERADOR_ASIGNACION . literal_real
- OPERADOR_RESTA desplazar e ir al estado 55
- literal_real ir al estado 74
- signo ir al estado 75
- estado 46
- 11 declaracion_const_int: INTEGER ID OPERADOR_ASIGNACION . literal_entero
- OPERADOR_RESTA desplazar e ir al estado 55
- literal_entero ir al estado 76
- signo ir al estado 77
- estado 47
- 9 declaracion_const_str: STRING ID OPERADOR_ASIGNACION . literal_string
- COMILLA desplazar e ir al estado 67
- literal_string ir al estado 78
- estado 48
- 4 constantes: constantes SEPARADOR_SENTENCIA const .
- $default reduce usando la regla 4 (constantes)
- estado 49
- 64 definicion_real: REAL DOSPUNTOS . iteracion_id SEPARADOR_SENTENCIA
- ID desplazar e ir al estado 79
- iteracion_id ir al estado 80
- estado 50
- 63 definicion_entero: INTEGER DOSPUNTOS . iteracion_id SEPARADOR_SENTENCIA
- ID desplazar e ir al estado 79
- iteracion_id ir al estado 81
- estado 51
- 62 definicion_string: STRING DOSPUNTOS . iteracion_id SEPARADOR_SENTENCIA
- ID desplazar e ir al estado 79
- iteracion_id ir al estado 82
- estado 52
- 2 zona_declaracion_variables: DEFINE conjunto_definiciones ENDDEFINE .
- $default reduce usando la regla 2 (zona_declaracion_variables)
- estado 53
- 12 conjunto_definiciones: conjunto_definiciones definiciones .
- $default reduce usando la regla 12 (conjunto_definiciones)
- estado 54
- 16 condicion: OPERADOR_NEGACION . comparacion
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- comparacion ir al estado 83
- expresion ir al estado 60
- termino ir al estado 61
- factor ir al estado 62
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 55
- 58 signo: OPERADOR_RESTA .
- $default reduce usando la regla 58 (signo)
- estado 56
- 34 factor: PARENTESIS_ABRE . expresion PARENTESIS_CIERRA
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- expresion ir al estado 84
- termino ir al estado 61
- factor ir al estado 62
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 57
- 31 factor: ID .
- $default reduce usando la regla 31 (factor)
- estado 58
- 14 seleccion: IF condicion . DO bloque ELSE bloque ENDIF
- DO desplazar e ir al estado 85
- estado 59
- 15 condicion: comparacion . OPERADOR_LOGICO comparacion
- 17 | comparacion .
- 18 | comparacion . OPERADOR_LOGICO OPERADOR_NEGACION comparacion
- OPERADOR_LOGICO desplazar e ir al estado 86
- $default reduce usando la regla 17 (condicion)
- estado 60
- 19 comparacion: expresion . OPERADOR_MAYOR expresion
- 20 | expresion . OPERADOR_MENOR expresion
- 21 | expresion . OPERADOR_MAYORIGUAL expresion
- 22 | expresion . OPERADOR_MENORIGUAL expresion
- 23 | expresion . OPERADOR_DISTINTO expresion
- 24 | expresion . OPERADOR_IGUAL expresion
- 25 expresion: expresion . OPERADOR_SUMA termino
- 26 | expresion . OPERADOR_RESTA termino
- OPERADOR_MAYOR desplazar e ir al estado 87
- OPERADOR_MENOR desplazar e ir al estado 88
- OPERADOR_IGUAL desplazar e ir al estado 89
- OPERADOR_MENORIGUAL desplazar e ir al estado 90
- OPERADOR_MAYORIGUAL desplazar e ir al estado 91
- OPERADOR_DISTINTO desplazar e ir al estado 92
- OPERADOR_SUMA desplazar e ir al estado 93
- OPERADOR_RESTA desplazar e ir al estado 94
- estado 61
- 27 expresion: termino .
- 28 termino: termino . OPERADOR_MULTIPLICACION factor
- 29 | termino . OPERADOR_DIVISION factor
- OPERADOR_MULTIPLICACION desplazar e ir al estado 95
- OPERADOR_DIVISION desplazar e ir al estado 96
- $default reduce usando la regla 27 (expresion)
- estado 62
- 30 termino: factor .
- $default reduce usando la regla 30 (termino)
- estado 63
- 33 factor: literal_real .
- $default reduce usando la regla 33 (factor)
- estado 64
- 32 factor: literal_entero .
- $default reduce usando la regla 32 (factor)
- estado 65
- 53 literal_real: signo . numero_int SEPARADOR_DECIMALES numero_int
- 54 | signo . SEPARADOR_DECIMALES numero_int
- 55 | signo . numero_int SEPARADOR_DECIMALES
- 56 literal_entero: signo . numero_int
- CONST_INT desplazar e ir al estado 97
- SEPARADOR_DECIMALES desplazar e ir al estado 98
- numero_int ir al estado 99
- estado 66
- 35 iteracion_condicional: WHILE condicion . DO bloque ENDWHILE
- DO desplazar e ir al estado 100
- estado 67
- 52 literal_string: COMILLA . CONST_STR COMILLA
- CONST_STR desplazar e ir al estado 101
- estado 68
- 42 comentario: APERTURA_COMENTARIO literal_string . CIERRE_COMENTARIO
- CIERRE_COMENTARIO desplazar e ir al estado 102
- estado 69
- 67 salida: DISPLAY PARENTESIS_ABRE . ID PARENTESIS_CIERRA
- 68 | DISPLAY PARENTESIS_ABRE . literal_entero PARENTESIS_CIERRA
- 69 | DISPLAY PARENTESIS_ABRE . literal_real PARENTESIS_CIERRA
- 70 | DISPLAY PARENTESIS_ABRE . literal_string PARENTESIS_CIERRA
- OPERADOR_RESTA desplazar e ir al estado 55
- COMILLA desplazar e ir al estado 67
- ID desplazar e ir al estado 103
- literal_string ir al estado 104
- literal_real ir al estado 105
- literal_entero ir al estado 106
- signo ir al estado 65
- estado 70
- 45 asignacion: ID OPERADOR_ASIGNACION . concatenacion
- 46 | ID OPERADOR_ASIGNACION . expresion
- 47 | ID OPERADOR_ASIGNACION . literal_string
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- COMILLA desplazar e ir al estado 67
- ID desplazar e ir al estado 107
- expresion ir al estado 108
- termino ir al estado 61
- factor ir al estado 62
- concatenacion ir al estado 109
- literal_string ir al estado 110
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 71
- 1 START: PROGRAM ID SEPARADOR_SENTENCIA zona_declaracion_constantes zona_declaracion_variables bloque ENDPROGRAM .
- $default reduce usando la regla 1 (START)
- estado 72
- 37 bloque: bloque sentencia . SEPARADOR_SENTENCIA
- SEPARADOR_SENTENCIA desplazar e ir al estado 111
- estado 73
- 36 bloque: sentencia SEPARADOR_SENTENCIA .
- $default reduce usando la regla 36 (bloque)
- estado 74
- 10 declaracion_const_reales: REAL ID OPERADOR_ASIGNACION literal_real .
- $default reduce usando la regla 10 (declaracion_const_reales)
- estado 75
- 53 literal_real: signo . numero_int SEPARADOR_DECIMALES numero_int
- 54 | signo . SEPARADOR_DECIMALES numero_int
- 55 | signo . numero_int SEPARADOR_DECIMALES
- CONST_INT desplazar e ir al estado 97
- SEPARADOR_DECIMALES desplazar e ir al estado 98
- numero_int ir al estado 112
- estado 76
- 11 declaracion_const_int: INTEGER ID OPERADOR_ASIGNACION literal_entero .
- $default reduce usando la regla 11 (declaracion_const_int)
- estado 77
- 56 literal_entero: signo . numero_int
- CONST_INT desplazar e ir al estado 97
- numero_int ir al estado 113
- estado 78
- 9 declaracion_const_str: STRING ID OPERADOR_ASIGNACION literal_string .
- $default reduce usando la regla 9 (declaracion_const_str)
- estado 79
- 65 iteracion_id: ID .
- 66 | ID . SEPARADOR_IDENTIFICADORES iteracion_id
- SEPARADOR_IDENTIFICADORES desplazar e ir al estado 114
- $default reduce usando la regla 65 (iteracion_id)
- estado 80
- 64 definicion_real: REAL DOSPUNTOS iteracion_id . SEPARADOR_SENTENCIA
- SEPARADOR_SENTENCIA desplazar e ir al estado 115
- estado 81
- 63 definicion_entero: INTEGER DOSPUNTOS iteracion_id . SEPARADOR_SENTENCIA
- SEPARADOR_SENTENCIA desplazar e ir al estado 116
- estado 82
- 62 definicion_string: STRING DOSPUNTOS iteracion_id . SEPARADOR_SENTENCIA
- SEPARADOR_SENTENCIA desplazar e ir al estado 117
- estado 83
- 16 condicion: OPERADOR_NEGACION comparacion .
- $default reduce usando la regla 16 (condicion)
- estado 84
- 25 expresion: expresion . OPERADOR_SUMA termino
- 26 | expresion . OPERADOR_RESTA termino
- 34 factor: PARENTESIS_ABRE expresion . PARENTESIS_CIERRA
- OPERADOR_SUMA desplazar e ir al estado 93
- OPERADOR_RESTA desplazar e ir al estado 94
- PARENTESIS_CIERRA desplazar e ir al estado 118
- estado 85
- 14 seleccion: IF condicion DO . bloque ELSE bloque ENDIF
- IF desplazar e ir al estado 32
- WHILE desplazar e ir al estado 33
- APERTURA_COMENTARIO desplazar e ir al estado 34
- DISPLAY desplazar e ir al estado 35
- ID desplazar e ir al estado 36
- seleccion ir al estado 37
- iteracion_condicional ir al estado 38
- bloque ir al estado 119
- sentencia ir al estado 40
- comentario ir al estado 41
- estructura_control ir al estado 42
- asignacion ir al estado 43
- salida ir al estado 44
- estado 86
- 15 condicion: comparacion OPERADOR_LOGICO . comparacion
- 18 | comparacion OPERADOR_LOGICO . OPERADOR_NEGACION comparacion
- OPERADOR_NEGACION desplazar e ir al estado 120
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- comparacion ir al estado 121
- expresion ir al estado 60
- termino ir al estado 61
- factor ir al estado 62
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 87
- 19 comparacion: expresion OPERADOR_MAYOR . expresion
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- expresion ir al estado 122
- termino ir al estado 61
- factor ir al estado 62
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 88
- 20 comparacion: expresion OPERADOR_MENOR . expresion
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- expresion ir al estado 123
- termino ir al estado 61
- factor ir al estado 62
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 89
- 24 comparacion: expresion OPERADOR_IGUAL . expresion
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- expresion ir al estado 124
- termino ir al estado 61
- factor ir al estado 62
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 90
- 22 comparacion: expresion OPERADOR_MENORIGUAL . expresion
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- expresion ir al estado 125
- termino ir al estado 61
- factor ir al estado 62
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 91
- 21 comparacion: expresion OPERADOR_MAYORIGUAL . expresion
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- expresion ir al estado 126
- termino ir al estado 61
- factor ir al estado 62
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 92
- 23 comparacion: expresion OPERADOR_DISTINTO . expresion
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- expresion ir al estado 127
- termino ir al estado 61
- factor ir al estado 62
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 93
- 25 expresion: expresion OPERADOR_SUMA . termino
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- termino ir al estado 128
- factor ir al estado 62
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 94
- 26 expresion: expresion OPERADOR_RESTA . termino
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- termino ir al estado 129
- factor ir al estado 62
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 95
- 28 termino: termino OPERADOR_MULTIPLICACION . factor
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- factor ir al estado 130
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 96
- 29 termino: termino OPERADOR_DIVISION . factor
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- factor ir al estado 131
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 97
- 57 numero_int: CONST_INT .
- $default reduce usando la regla 57 (numero_int)
- estado 98
- 54 literal_real: signo SEPARADOR_DECIMALES . numero_int
- CONST_INT desplazar e ir al estado 97
- numero_int ir al estado 132
- estado 99
- 53 literal_real: signo numero_int . SEPARADOR_DECIMALES numero_int
- 55 | signo numero_int . SEPARADOR_DECIMALES
- 56 literal_entero: signo numero_int .
- SEPARADOR_DECIMALES desplazar e ir al estado 133
- $default reduce usando la regla 56 (literal_entero)
- estado 100
- 35 iteracion_condicional: WHILE condicion DO . bloque ENDWHILE
- IF desplazar e ir al estado 32
- WHILE desplazar e ir al estado 33
- APERTURA_COMENTARIO desplazar e ir al estado 34
- DISPLAY desplazar e ir al estado 35
- ID desplazar e ir al estado 36
- seleccion ir al estado 37
- iteracion_condicional ir al estado 38
- bloque ir al estado 134
- sentencia ir al estado 40
- comentario ir al estado 41
- estructura_control ir al estado 42
- asignacion ir al estado 43
- salida ir al estado 44
- estado 101
- 52 literal_string: COMILLA CONST_STR . COMILLA
- COMILLA desplazar e ir al estado 135
- estado 102
- 42 comentario: APERTURA_COMENTARIO literal_string CIERRE_COMENTARIO .
- $default reduce usando la regla 42 (comentario)
- estado 103
- 67 salida: DISPLAY PARENTESIS_ABRE ID . PARENTESIS_CIERRA
- PARENTESIS_CIERRA desplazar e ir al estado 136
- estado 104
- 70 salida: DISPLAY PARENTESIS_ABRE literal_string . PARENTESIS_CIERRA
- PARENTESIS_CIERRA desplazar e ir al estado 137
- estado 105
- 69 salida: DISPLAY PARENTESIS_ABRE literal_real . PARENTESIS_CIERRA
- PARENTESIS_CIERRA desplazar e ir al estado 138
- estado 106
- 68 salida: DISPLAY PARENTESIS_ABRE literal_entero . PARENTESIS_CIERRA
- PARENTESIS_CIERRA desplazar e ir al estado 139
- estado 107
- 31 factor: ID .
- 48 concatenacion: ID . OPERADOR_SUMA ID
- 49 | ID . OPERADOR_SUMA literal_string
- OPERADOR_SUMA desplazar e ir al estado 140
- OPERADOR_SUMA [reduce usando la regla 31 (factor)]
- $default reduce usando la regla 31 (factor)
- estado 108
- 25 expresion: expresion . OPERADOR_SUMA termino
- 26 | expresion . OPERADOR_RESTA termino
- 46 asignacion: ID OPERADOR_ASIGNACION expresion .
- OPERADOR_SUMA desplazar e ir al estado 93
- OPERADOR_RESTA desplazar e ir al estado 94
- $default reduce usando la regla 46 (asignacion)
- estado 109
- 45 asignacion: ID OPERADOR_ASIGNACION concatenacion .
- $default reduce usando la regla 45 (asignacion)
- estado 110
- 47 asignacion: ID OPERADOR_ASIGNACION literal_string .
- 50 concatenacion: literal_string . OPERADOR_SUMA ID
- 51 | literal_string . OPERADOR_SUMA literal_string
- OPERADOR_SUMA desplazar e ir al estado 141
- $default reduce usando la regla 47 (asignacion)
- estado 111
- 37 bloque: bloque sentencia SEPARADOR_SENTENCIA .
- $default reduce usando la regla 37 (bloque)
- estado 112
- 53 literal_real: signo numero_int . SEPARADOR_DECIMALES numero_int
- 55 | signo numero_int . SEPARADOR_DECIMALES
- SEPARADOR_DECIMALES desplazar e ir al estado 133
- estado 113
- 56 literal_entero: signo numero_int .
- $default reduce usando la regla 56 (literal_entero)
- estado 114
- 66 iteracion_id: ID SEPARADOR_IDENTIFICADORES . iteracion_id
- ID desplazar e ir al estado 79
- iteracion_id ir al estado 142
- estado 115
- 64 definicion_real: REAL DOSPUNTOS iteracion_id SEPARADOR_SENTENCIA .
- $default reduce usando la regla 64 (definicion_real)
- estado 116
- 63 definicion_entero: INTEGER DOSPUNTOS iteracion_id SEPARADOR_SENTENCIA .
- $default reduce usando la regla 63 (definicion_entero)
- estado 117
- 62 definicion_string: STRING DOSPUNTOS iteracion_id SEPARADOR_SENTENCIA .
- $default reduce usando la regla 62 (definicion_string)
- estado 118
- 34 factor: PARENTESIS_ABRE expresion PARENTESIS_CIERRA .
- $default reduce usando la regla 34 (factor)
- estado 119
- 14 seleccion: IF condicion DO bloque . ELSE bloque ENDIF
- 37 bloque: bloque . sentencia SEPARADOR_SENTENCIA
- IF desplazar e ir al estado 32
- ELSE desplazar e ir al estado 143
- WHILE desplazar e ir al estado 33
- APERTURA_COMENTARIO desplazar e ir al estado 34
- DISPLAY desplazar e ir al estado 35
- ID desplazar e ir al estado 36
- seleccion ir al estado 37
- iteracion_condicional ir al estado 38
- sentencia ir al estado 72
- comentario ir al estado 41
- estructura_control ir al estado 42
- asignacion ir al estado 43
- salida ir al estado 44
- estado 120
- 18 condicion: comparacion OPERADOR_LOGICO OPERADOR_NEGACION . comparacion
- OPERADOR_RESTA desplazar e ir al estado 55
- PARENTESIS_ABRE desplazar e ir al estado 56
- ID desplazar e ir al estado 57
- comparacion ir al estado 144
- expresion ir al estado 60
- termino ir al estado 61
- factor ir al estado 62
- literal_real ir al estado 63
- literal_entero ir al estado 64
- signo ir al estado 65
- estado 121
- 15 condicion: comparacion OPERADOR_LOGICO comparacion .
- $default reduce usando la regla 15 (condicion)
- estado 122
- 19 comparacion: expresion OPERADOR_MAYOR expresion .
- 25 expresion: expresion . OPERADOR_SUMA termino
- 26 | expresion . OPERADOR_RESTA termino
- OPERADOR_SUMA desplazar e ir al estado 93
- OPERADOR_RESTA desplazar e ir al estado 94
- $default reduce usando la regla 19 (comparacion)
- estado 123
- 20 comparacion: expresion OPERADOR_MENOR expresion .
- 25 expresion: expresion . OPERADOR_SUMA termino
- 26 | expresion . OPERADOR_RESTA termino
- OPERADOR_SUMA desplazar e ir al estado 93
- OPERADOR_RESTA desplazar e ir al estado 94
- $default reduce usando la regla 20 (comparacion)
- estado 124
- 24 comparacion: expresion OPERADOR_IGUAL expresion .
- 25 expresion: expresion . OPERADOR_SUMA termino
- 26 | expresion . OPERADOR_RESTA termino
- OPERADOR_SUMA desplazar e ir al estado 93
- OPERADOR_RESTA desplazar e ir al estado 94
- $default reduce usando la regla 24 (comparacion)
- estado 125
- 22 comparacion: expresion OPERADOR_MENORIGUAL expresion .
- 25 expresion: expresion . OPERADOR_SUMA termino
- 26 | expresion . OPERADOR_RESTA termino
- OPERADOR_SUMA desplazar e ir al estado 93
- OPERADOR_RESTA desplazar e ir al estado 94
- $default reduce usando la regla 22 (comparacion)
- estado 126
- 21 comparacion: expresion OPERADOR_MAYORIGUAL expresion .
- 25 expresion: expresion . OPERADOR_SUMA termino
- 26 | expresion . OPERADOR_RESTA termino
- OPERADOR_SUMA desplazar e ir al estado 93
- OPERADOR_RESTA desplazar e ir al estado 94
- $default reduce usando la regla 21 (comparacion)
- estado 127
- 23 comparacion: expresion OPERADOR_DISTINTO expresion .
- 25 expresion: expresion . OPERADOR_SUMA termino
- 26 | expresion . OPERADOR_RESTA termino
- OPERADOR_SUMA desplazar e ir al estado 93
- OPERADOR_RESTA desplazar e ir al estado 94
- $default reduce usando la regla 23 (comparacion)
- estado 128
- 25 expresion: expresion OPERADOR_SUMA termino .
- 28 termino: termino . OPERADOR_MULTIPLICACION factor
- 29 | termino . OPERADOR_DIVISION factor
- OPERADOR_MULTIPLICACION desplazar e ir al estado 95
- OPERADOR_DIVISION desplazar e ir al estado 96
- $default reduce usando la regla 25 (expresion)
- estado 129
- 26 expresion: expresion OPERADOR_RESTA termino .
- 28 termino: termino . OPERADOR_MULTIPLICACION factor
- 29 | termino . OPERADOR_DIVISION factor
- OPERADOR_MULTIPLICACION desplazar e ir al estado 95
- OPERADOR_DIVISION desplazar e ir al estado 96
- $default reduce usando la regla 26 (expresion)
- estado 130
- 28 termino: termino OPERADOR_MULTIPLICACION factor .
- $default reduce usando la regla 28 (termino)
- estado 131
- 29 termino: termino OPERADOR_DIVISION factor .
- $default reduce usando la regla 29 (termino)
- estado 132
- 54 literal_real: signo SEPARADOR_DECIMALES numero_int .
- $default reduce usando la regla 54 (literal_real)
- estado 133
- 53 literal_real: signo numero_int SEPARADOR_DECIMALES . numero_int
- 55 | signo numero_int SEPARADOR_DECIMALES .
- CONST_INT desplazar e ir al estado 97
- $default reduce usando la regla 55 (literal_real)
- numero_int ir al estado 145
- estado 134
- 35 iteracion_condicional: WHILE condicion DO bloque . ENDWHILE
- 37 bloque: bloque . sentencia SEPARADOR_SENTENCIA
- IF desplazar e ir al estado 32
- WHILE desplazar e ir al estado 33
- ENDWHILE desplazar e ir al estado 146
- APERTURA_COMENTARIO desplazar e ir al estado 34
- DISPLAY desplazar e ir al estado 35
- ID desplazar e ir al estado 36
- seleccion ir al estado 37
- iteracion_condicional ir al estado 38
- sentencia ir al estado 72
- comentario ir al estado 41
- estructura_control ir al estado 42
- asignacion ir al estado 43
- salida ir al estado 44
- estado 135
- 52 literal_string: COMILLA CONST_STR COMILLA .
- $default reduce usando la regla 52 (literal_string)
- estado 136
- 67 salida: DISPLAY PARENTESIS_ABRE ID PARENTESIS_CIERRA .
- $default reduce usando la regla 67 (salida)
- estado 137
- 70 salida: DISPLAY PARENTESIS_ABRE literal_string PARENTESIS_CIERRA .
- $default reduce usando la regla 70 (salida)
- estado 138
- 69 salida: DISPLAY PARENTESIS_ABRE literal_real PARENTESIS_CIERRA .
- $default reduce usando la regla 69 (salida)
- estado 139
- 68 salida: DISPLAY PARENTESIS_ABRE literal_entero PARENTESIS_CIERRA .
- $default reduce usando la regla 68 (salida)
- estado 140
- 48 concatenacion: ID OPERADOR_SUMA . ID
- 49 | ID OPERADOR_SUMA . literal_string
- COMILLA desplazar e ir al estado 67
- ID desplazar e ir al estado 147
- literal_string ir al estado 148
- estado 141
- 50 concatenacion: literal_string OPERADOR_SUMA . ID
- 51 | literal_string OPERADOR_SUMA . literal_string
- COMILLA desplazar e ir al estado 67
- ID desplazar e ir al estado 149
- literal_string ir al estado 150
- estado 142
- 66 iteracion_id: ID SEPARADOR_IDENTIFICADORES iteracion_id .
- $default reduce usando la regla 66 (iteracion_id)
- estado 143
- 14 seleccion: IF condicion DO bloque ELSE . bloque ENDIF
- IF desplazar e ir al estado 32
- WHILE desplazar e ir al estado 33
- APERTURA_COMENTARIO desplazar e ir al estado 34
- DISPLAY desplazar e ir al estado 35
- ID desplazar e ir al estado 36
- seleccion ir al estado 37
- iteracion_condicional ir al estado 38
- bloque ir al estado 151
- sentencia ir al estado 40
- comentario ir al estado 41
- estructura_control ir al estado 42
- asignacion ir al estado 43
- salida ir al estado 44
- estado 144
- 18 condicion: comparacion OPERADOR_LOGICO OPERADOR_NEGACION comparacion .
- $default reduce usando la regla 18 (condicion)
- estado 145
- 53 literal_real: signo numero_int SEPARADOR_DECIMALES numero_int .
- $default reduce usando la regla 53 (literal_real)
- estado 146
- 35 iteracion_condicional: WHILE condicion DO bloque ENDWHILE .
- $default reduce usando la regla 35 (iteracion_condicional)
- estado 147
- 48 concatenacion: ID OPERADOR_SUMA ID .
- $default reduce usando la regla 48 (concatenacion)
- estado 148
- 49 concatenacion: ID OPERADOR_SUMA literal_string .
- $default reduce usando la regla 49 (concatenacion)
- estado 149
- 50 concatenacion: literal_string OPERADOR_SUMA ID .
- $default reduce usando la regla 50 (concatenacion)
- estado 150
- 51 concatenacion: literal_string OPERADOR_SUMA literal_string .
- $default reduce usando la regla 51 (concatenacion)
- estado 151
- 14 seleccion: IF condicion DO bloque ELSE bloque . ENDIF
- 37 bloque: bloque . sentencia SEPARADOR_SENTENCIA
- IF desplazar e ir al estado 32
- ENDIF desplazar e ir al estado 152
- WHILE desplazar e ir al estado 33
- APERTURA_COMENTARIO desplazar e ir al estado 34
- DISPLAY desplazar e ir al estado 35
- ID desplazar e ir al estado 36
- seleccion ir al estado 37
- iteracion_condicional ir al estado 38
- sentencia ir al estado 72
- comentario ir al estado 41
- estructura_control ir al estado 42
- asignacion ir al estado 43
- salida ir al estado 44
- estado 152
- 14 seleccion: IF condicion DO bloque ELSE bloque ENDIF .
- $default reduce usando la regla 14 (seleccion)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement