Mudanças entre as edições de "Notas scc605(sandra)"
Linha 2: | Linha 2: | ||
* '''Bateria de Testes para o Analisador Léxico:'''[[Media:casos_teste.tar.gz]] | * '''Bateria de Testes para o Analisador Léxico:'''[[Media:casos_teste.tar.gz]] | ||
+ | |||
+ | * =====Análise dos não Enviados ============== | ||
+ | |||
+ | G10. Definição de Constantes em Pascal | ||
+ | Especificações Léxicas: | ||
+ | |||
+ | read, write, true e false não são palavras reservadas. | ||
+ | Faltam as reservadas: or, div, and, not | ||
+ | |||
+ | Na seção de constantes deve falar o tamanho do inteiro, o intervalo de variação e as constantes booleanas (true/false) | ||
+ | e o tamnho de 1 byte | ||
+ | |||
+ | Esqueceu de colocar os símbolos especiais de FRANKIE mais a extensão. São 16 da parte básica, | ||
+ | mais o = da extensão. | ||
+ | |||
+ | Gramática: | ||
+ | |||
+ | [<parte de declarações de constantes>] ::= const <def-const> ; {<def-const>;} | ||
+ | <def-const> ::= <identificador> = [+|-]<numero>|true|false | ||
+ | |||
+ | ==> falta permitir que identificadores sejam constantes, como no caso: | ||
+ | |||
+ | const m = 12; | ||
+ | n = m; | ||
+ | p = -n; | ||
+ | |||
+ | Por isto o sinal vai para <numero> e <identificador: | ||
+ | |||
+ | <def-const> ::= <identificador> = [+|-] ( <numero>| <identificador> ) | ||
+ | |||
+ | A extensão proposta, fica errada dado que true e false são IDS e não palavras reservadas. | ||
+ | Isto quer dizer que serão reconhecidas como identificadores, por isto que teremos na análise semântica que IMPEDIR | ||
+ | o uso indevido dos sinais para o caso dos IDS true e false, em que não se aplica o uso de sinais certo? | ||
+ | |||
+ | |||
''Voltar para [[Scc-605(sandra)]]'' | ''Voltar para [[Scc-605(sandra)]]'' |
Edição das 19h54min de 13 de maio de 2011
- Notas do P1:Media:P1_SCC_605.rar
- Bateria de Testes para o Analisador Léxico:Media:casos_teste.tar.gz
- =====Análise dos não Enviados ==============
G10. Definição de Constantes em Pascal Especificações Léxicas:
read, write, true e false não são palavras reservadas. Faltam as reservadas: or, div, and, not
Na seção de constantes deve falar o tamanho do inteiro, o intervalo de variação e as constantes booleanas (true/false) e o tamnho de 1 byte
Esqueceu de colocar os símbolos especiais de FRANKIE mais a extensão. São 16 da parte básica, mais o = da extensão.
Gramática:
[<parte de declarações de constantes>] ::= const <def-const> ; {<def-const>;} <def-const> ::= <identificador> = [+|-]<numero>|true|false
==> falta permitir que identificadores sejam constantes, como no caso:
const m = 12;
n = m; p = -n;
Por isto o sinal vai para <numero> e <identificador:
<def-const> ::= <identificador> = [+|-] ( <numero>| <identificador> )
A extensão proposta, fica errada dado que true e false são IDS e não palavras reservadas. Isto quer dizer que serão reconhecidas como identificadores, por isto que teremos na análise semântica que IMPEDIR o uso indevido dos sinais para o caso dos IDS true e false, em que não se aplica o uso de sinais certo?
Voltar para Scc-605(sandra)