·
Engenharia de Software ·
Estrutura de Dados
Send your question to AI and receive an answer instantly
Recommended for you
1
Cronograma de Apresentações dos Grupos
Estrutura de Dados
UMG
7
Fila-Duplamente-Encadeada-Prioridade-RefMovel-Implementacao-e-Vantagens
Estrutura de Dados
UMG
2
Jogo de Lista Enc Circular na Linguagem C
Estrutura de Dados
UMG
39
Análise de Algoritmo - Usp
Estrutura de Dados
UFC
3
Trabalho Final Companhia Aerea - Algoritmos e Estruturas de Dados
Estrutura de Dados
PUC
2
Projeto Es
Estrutura de Dados
FAG
1
Trabalho Arvore B - Otimizacao de Busca em Dados de Vendas e Bibliotecas
Estrutura de Dados
CESF
3
MAPA Estrutura de Dados II - Busca Binária e Aplicações
Estrutura de Dados
UNICESUMAR
6
Implementacao do Algoritmo Flood Fill com Pilha e Fila para Preenchimento de Imagens
Estrutura de Dados
PUC
2
Atividade Fila Circular e Simples - Implementacao e Interacao
Estrutura de Dados
FAG
Preview text
Trabalho Final EDA Upload via Moodle Entrevista conforme divulgado no Moodle EM DUPLAS NÃO SERÃO ACEITOS TRABALHOS COM GRUPOS COM MAIS DE 2 MEMBROS TODOS OS ARQUIVOS DEVERÃO SE ENTREGUES H C PRJ EXE ETC BEM COMO UM PEQUENO RELATÓRIO IDENTIFICANDO OS AUTORES A FUNCIONALIDADE DO SISTEMA COMANDOS DE COMPILAÇÃO DE BIBLIOTECAS UTILIZADAS E COMENTÁRIOS SOBRE OS EXPERIMENTOS OS TRABALHOS ENTREGUES FORA DO PRAZO TERÃO NOTA ZERO OS CÓDIGOS DEVEM SER COMENTADOS Tarefa construção de um programa de aplicação que lê um arquivo no modo texto sem formatação e grava as palavras em uma ABBAVL A ABBAVL servirá como estrutura de índice para a pesquisa de palavras 1 Descrição da ABB Pode ser usada uma ABB sem balanceamento porém preferencialmente utilize uma ABBAVL Cada nó da árvore armazena um descritor para uma lista de palavras A lista conterá uma palavra ou todas as ocorrências da mesma palavra em locais distintos do texto Figura 1 Figura 1 Nó da ABBAVL e lista associada 11 Ordenação da ABBAVL O valor da chave uma cadeia de caracteres representando uma palavra que ordena a árvore é calculada da seguinte forma Considere a string abcd cada caractere ocupa uma posição str0a str1b etc Calcule o valor da chave somando os produtos entre cada código ascii do caractere e seu respectivo índice na string mais um chave intstr01 intstr12 intstr23 intstr34 Palavras iguais fornecem o mesmo valor para a chave 12 Funções de callback i comparaNaArvore auxilia na determinação da relação entre um nó visitado na ABB e um nome a ser inserido buscado ou removido ii comparaNaLista verifica se determinado nó da lista faz referência a linha e coluna que correspondem a determinado elemento do texto iii printpalavra executa printf da palavra linha coluna em um nó da LDDE 2 Funcionalidade do Sistema 21 carga da ABBListas a partir do arquivotxt 22 destruição da ABBListas 22 A buscaexibição das ocorrências de determinada palavra o usuário fornece a palavra e o sistema informa as linhas e colunas das ocorrências do primeiro caractere da palavra no texto A busca é realizada na ABB 23 OPCIONAL Remoção das ocorrências de determinada palavra O usuário informa a tupla palavra linha coluna e o TDA utiliza o devido callback na ABB para detectar a posição da palavra procurada Caso seja encontrada a ABB a mesma é removida desta e da tabela Caso haja uma única palavra também removese o respectivo nó da ABB e da lista 24 OPCIONAL Atualização em disco a remoção busca alteração ou inserção ocorrem na memória principal portanto não estão sendo efetivadas no arquivo Para tanto o usuário precisará acionar a opção de atualização do arquivo txt fonteoriginal Cada palavra lida no arquivo é procurada na ABB se existir tal palavra na árvore a mesma é copiada do arquivo original para um arqTemptxt Ao final usando a função rename renomeie o arquivotxt como arquivoOLDtxt e após isso renomeie arqTemptxt como arquivotxt 25 OPCIONAL Alteração e inserção de nova palavra O usuário informa a tupla palavra linha coluna e esta é procurada na ABB Caso a posição já está ocupada por outra palavra o usuário recebe msg e opta entre substituir a palavra existente pela nova palavra alteração inserir a nova palavra na posição da atual sem removêla ou nada fazer 3 Recomendações finais 1 Mantenha o encapsulamento entre aplicação e estrutura de dados ABBLDDE 2 No material disponível no site Moodle consta uma apostila com funções para leituraescrita em arquivos modo texto Em especial há funções bastante úteis fgetsfputs fseek rename etc Além de strcat strcmp etc 3 Foque seus esforços nos objetivos do sistema deixe os detalhes estéticos para o final Não se preocupe com interfaces bonitas ou códigos extremamente rebuscados mas sim com um projeto bem estruturado e que funcione 4 Reaproveite código tirando proveito dos códigos e bibliotecas de TDAs disponíveis Árvore e LDDE Altere esses códigos se achar conveniente 5 Em nenhuma hipótese faça uso de variáveis globais Use e abuse de funções da biblioteca padrão do C mas tenha certeza que conhece o seu comportamento Quaisquer dúvidas adicionais procure o professor ou o monitor da disciplina 5 Fontes Bibliográficas Moodle da disciplina httpwwwlcadicmcuspbrnonatoEDAVLnode67html
Send your question to AI and receive an answer instantly
Recommended for you
1
Cronograma de Apresentações dos Grupos
Estrutura de Dados
UMG
7
Fila-Duplamente-Encadeada-Prioridade-RefMovel-Implementacao-e-Vantagens
Estrutura de Dados
UMG
2
Jogo de Lista Enc Circular na Linguagem C
Estrutura de Dados
UMG
39
Análise de Algoritmo - Usp
Estrutura de Dados
UFC
3
Trabalho Final Companhia Aerea - Algoritmos e Estruturas de Dados
Estrutura de Dados
PUC
2
Projeto Es
Estrutura de Dados
FAG
1
Trabalho Arvore B - Otimizacao de Busca em Dados de Vendas e Bibliotecas
Estrutura de Dados
CESF
3
MAPA Estrutura de Dados II - Busca Binária e Aplicações
Estrutura de Dados
UNICESUMAR
6
Implementacao do Algoritmo Flood Fill com Pilha e Fila para Preenchimento de Imagens
Estrutura de Dados
PUC
2
Atividade Fila Circular e Simples - Implementacao e Interacao
Estrutura de Dados
FAG
Preview text
Trabalho Final EDA Upload via Moodle Entrevista conforme divulgado no Moodle EM DUPLAS NÃO SERÃO ACEITOS TRABALHOS COM GRUPOS COM MAIS DE 2 MEMBROS TODOS OS ARQUIVOS DEVERÃO SE ENTREGUES H C PRJ EXE ETC BEM COMO UM PEQUENO RELATÓRIO IDENTIFICANDO OS AUTORES A FUNCIONALIDADE DO SISTEMA COMANDOS DE COMPILAÇÃO DE BIBLIOTECAS UTILIZADAS E COMENTÁRIOS SOBRE OS EXPERIMENTOS OS TRABALHOS ENTREGUES FORA DO PRAZO TERÃO NOTA ZERO OS CÓDIGOS DEVEM SER COMENTADOS Tarefa construção de um programa de aplicação que lê um arquivo no modo texto sem formatação e grava as palavras em uma ABBAVL A ABBAVL servirá como estrutura de índice para a pesquisa de palavras 1 Descrição da ABB Pode ser usada uma ABB sem balanceamento porém preferencialmente utilize uma ABBAVL Cada nó da árvore armazena um descritor para uma lista de palavras A lista conterá uma palavra ou todas as ocorrências da mesma palavra em locais distintos do texto Figura 1 Figura 1 Nó da ABBAVL e lista associada 11 Ordenação da ABBAVL O valor da chave uma cadeia de caracteres representando uma palavra que ordena a árvore é calculada da seguinte forma Considere a string abcd cada caractere ocupa uma posição str0a str1b etc Calcule o valor da chave somando os produtos entre cada código ascii do caractere e seu respectivo índice na string mais um chave intstr01 intstr12 intstr23 intstr34 Palavras iguais fornecem o mesmo valor para a chave 12 Funções de callback i comparaNaArvore auxilia na determinação da relação entre um nó visitado na ABB e um nome a ser inserido buscado ou removido ii comparaNaLista verifica se determinado nó da lista faz referência a linha e coluna que correspondem a determinado elemento do texto iii printpalavra executa printf da palavra linha coluna em um nó da LDDE 2 Funcionalidade do Sistema 21 carga da ABBListas a partir do arquivotxt 22 destruição da ABBListas 22 A buscaexibição das ocorrências de determinada palavra o usuário fornece a palavra e o sistema informa as linhas e colunas das ocorrências do primeiro caractere da palavra no texto A busca é realizada na ABB 23 OPCIONAL Remoção das ocorrências de determinada palavra O usuário informa a tupla palavra linha coluna e o TDA utiliza o devido callback na ABB para detectar a posição da palavra procurada Caso seja encontrada a ABB a mesma é removida desta e da tabela Caso haja uma única palavra também removese o respectivo nó da ABB e da lista 24 OPCIONAL Atualização em disco a remoção busca alteração ou inserção ocorrem na memória principal portanto não estão sendo efetivadas no arquivo Para tanto o usuário precisará acionar a opção de atualização do arquivo txt fonteoriginal Cada palavra lida no arquivo é procurada na ABB se existir tal palavra na árvore a mesma é copiada do arquivo original para um arqTemptxt Ao final usando a função rename renomeie o arquivotxt como arquivoOLDtxt e após isso renomeie arqTemptxt como arquivotxt 25 OPCIONAL Alteração e inserção de nova palavra O usuário informa a tupla palavra linha coluna e esta é procurada na ABB Caso a posição já está ocupada por outra palavra o usuário recebe msg e opta entre substituir a palavra existente pela nova palavra alteração inserir a nova palavra na posição da atual sem removêla ou nada fazer 3 Recomendações finais 1 Mantenha o encapsulamento entre aplicação e estrutura de dados ABBLDDE 2 No material disponível no site Moodle consta uma apostila com funções para leituraescrita em arquivos modo texto Em especial há funções bastante úteis fgetsfputs fseek rename etc Além de strcat strcmp etc 3 Foque seus esforços nos objetivos do sistema deixe os detalhes estéticos para o final Não se preocupe com interfaces bonitas ou códigos extremamente rebuscados mas sim com um projeto bem estruturado e que funcione 4 Reaproveite código tirando proveito dos códigos e bibliotecas de TDAs disponíveis Árvore e LDDE Altere esses códigos se achar conveniente 5 Em nenhuma hipótese faça uso de variáveis globais Use e abuse de funções da biblioteca padrão do C mas tenha certeza que conhece o seu comportamento Quaisquer dúvidas adicionais procure o professor ou o monitor da disciplina 5 Fontes Bibliográficas Moodle da disciplina httpwwwlcadicmcuspbrnonatoEDAVLnode67html