Ir para conteúdo
Fórum Script Brasil
  • 0

Tabela De Simbolos


kitsune

Pergunta

Para o projeto de analisador léxico, eu implementei o dicionario de palavras reservadas e o AFD juntamente com os simbolos que ele deve reconhecer, de modo que eu coloquei que ele armazenasse o que fosse constante numa String constante e o que fosse identificador na String identificador, mas não sei como passar essas Strings para a tabela de símbolo, haja visto também que eu tenho que saber como armazenar dois, ou três valores para um identificador, ou uma constante, do tipo que na tabela de simbolos tenha que ficar mais ou menos uma tabela assim:

| indice | simbolo| tipo

| 1 | joana | id

| 2 | 111 |cte

onde tipo pode ser caracterizado como identificador(id) ou constante(cte), eu sei que a sacada de colocar uma String para identificador e outra para constante ajuda bastante, mas não sei como devo repassar para a classe de tabela de símbolos e não sei que tipo de estrutura de armazenamento devo utilizar. huh.gifhuh.gif

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Eu sei utilizar StringBuffer, mas não sei como fazer para que ele armazene todos os valores que eu preciso na tabela, afinal são dois valores já que o índice indicaria a posição do simbolo na tabela.

Link para o comentário
Compartilhar em outros sites

  • 0
Eu sei utilizar StringBuffer, mas não sei como fazer para que ele armazene todos os valores que eu preciso na tabela, afinal são dois valores já que o índice indicaria a posição do simbolo na tabela.

Porque não usa um vetor ou um array, depois vai passando ele e colocando os nomes na ordem

Link para o comentário
Compartilhar em outros sites

  • 0

Eu sei, pensei em usar Vector, mas não entendo como fazer para armazenar dois valores dentro de um índice. Vou mostrar como é minha classe automato:

public class Automato

{

String identificador;

String constante;

String sentenca;

int escolha;

int contautomato;

 

  Letra letra = new Letra();

  Digito digito = new Digito();

public boolean conter(String simbolo)

{

  while(contautomato<sentenca.length())

  {

  switch(escolha)

  {

  case 1:letra.existeLetra(simbolo);

    identificador+= simbolo;

  case 2: digito.existeDigito(simbolo);

    constante+=simbolo;

  default: System.out.println("Erro de caracter não reconhecido");

  }

  }

  return true || false;

}

}

Para a String identificador eu devo armazenar na tabela de simbolos o indice do objeto que sera inserido, o simbolo em si e o tipo(constante ou identificador), o mesmo ocorre para a string identificador.

Me ajudem, por favor.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...