Mudanças entre as edições de "Notas scc605(sandra)"

De CoteiaWiki
Linha 12: Linha 12:
 
* '''Bateria de Testes para o Analisador Sintático:'''[[Media:casos_testes2.tar.gz]]
 
* '''Bateria de Testes para o Analisador Sintático:'''[[Media:casos_testes2.tar.gz]]
  
* '''Notas do P2 (com notas do G2 e G15; G1 revisado):'''[[Media:notas_P2_SCC_605_rec.rar]]
+
* '''Notas do P2 (com notas do G2 e G15; G1 revisado):'''[[Media:notas_P2_SCC_605_rev.rar]]
  
 
* '''Bateria de Testes para o Analisador Sintático revisada:'''[[Media:casos_testes_rev.tar.gz]]
 
* '''Bateria de Testes para o Analisador Sintático revisada:'''[[Media:casos_testes_rev.tar.gz]]

Edição das 01h33min de 19 de junho de 2011




  • =====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)