
rtbarreto
(usa Ubuntu)
Enviado em 26/11/2013 - 09:12h
Bom dia pessoal, tudo certo ?
Gostaria de uma ajuda de vocês, tenho um codigo de um analisador sintatico em portugol, preciso passar pra c mais tenho muita dificuldade para programar. se alguem poder ajudar ficarei muito grato.
segue abaixo o codigo que fiz em portugol
VALIDA PROGRAMA(){
SE '{' OK SENAO NOK
VALIDA_COMANDOS
SE '}' OK SENAO NOK
}
VALIDA_COMANDOS(){
WHILE (FINAL DO ARQUIVO NÃO CHEGAR){
CASE 'DECLARA_VARIAVEL': VALIDA_DECLARACAO
CASE 'VARIAVEL': VALIDA_ATRIBUICAO
CASE 'IF':
...
}
}
VALIDA_ATRIBUICAO(){
SE '=' OK NAO NOK
VALIDA_EXPRESSAO
}
VALIDA_EXPRESSAO(){
}
VALIDA_DECLARACAO()
SE 'VARIAVEL' OK SENAO NOK
SE ',' VALIDA_DECLARACAO
SE ';' OK SENAO NOK
}
VALIDA_IF(){
LER TOKEN
SE '(' OK SENAO NOK
VERIFICA_CONDICAO
SE ')' OK SENAO NOK
VERIFICA_COMANDOS
}