Essays.club - TCC, Modelos de monografias, Trabalhos de universidades, Ensaios, Bibliografias
Pesquisar

Atividade Aberta

Por:   •  1/4/2018  •  3.247 Palavras (13 Páginas)  •  286 Visualizações

Página 1 de 13

...

- Desenvolva o algoritmo para Inserção, Pesquisa e Remoção no Arquivo Sequencial. Justifique a escolha da chave.

Inserção:

procedimento atualizarArquivoSequencial (cadastro dados[])

{

abrir Arquivo Sequencial Original (ponteiro de leitura no início do arquivo);

criar Arquivo de Atualização (ponteiro de escrita no início do arquivo);

enquanto (não for o final do Arquivo Sequencial Original e não for o final do vetor)

{

se (dados.chave do registro do Arquivo Sequencial Original //processo de intercalação

{

gravar dados do Registro do Arquivo Sequencial Original no Arquivo de Atualização);

ler próximo registro do Arquivo Sequencial Original);

}

senão

{

gravar dados do Registro do Vetor no Arquivo de Atualização);

ler próximo registro do Vetor);

}

}

se (ainda não for o final do Arquivo Sequencial Original)

{

enquanto (não for o final do Arquivo Sequencial Original)

{

gravar dados do Registro do Arquivo Sequencial Original no Arquivo de Atualização);

ler próximo registro do Arquivo Sequencial Original);

}

}

se (ainda não for o final do vetor)

{

enquanto (não for o final do Vetor)

{

gravar dados do Registro do Vetor no Arquivo de Atualização);

ler próximo registro do Vetor);

}

}

fechar Arquivo Sequencial Original;

fechar Arquivo de Atualização;

deletar Arquivo Sequencial Original;

renomeiar Arquivo de Atualização para Arquivo Sequencial Original.

}

Remoção:

procedimento fazerMarca (cadastro exclusão)

{

abrir Arquivo Sequencial (ponteiro de leitura e escrita para início do arquivo);

enquanto (não for o final do Arquivo Sequencial)

{

se (dados.chave do registro do Arquivo Sequencial == exclusão.chave) //processo de pesquisa no Arquivo Sequencial

{

dados.marca = 1; //inserção da marca no arquivo excluído

gravar alteração do Registro no Arquivo Sequencial;

}

ler próximo Registro do Arquivo Sequencial;

}

}

procedimento atualizarArquivo ()

{

abrir Arquivo Sequencial Original (ponteiro de leitura para início do arquivo);

abrir Arquivo de Atualização (ponteiro de escrita para início do arquivo);

enquanto (não for o final do Arquivo Sequencial)

{

se (dados.marca ==0) //processo de verificação, se registro sem marca de exclusão

{

gravar dados desse Registro do Arquivo Sequencial Original no Arquivo de Atualização);

}

ler próximo Registro do Arquivo Sequencial;

}

fechar Arquivo Sequencial Original;

fechar Arquivo de Atualização;

deletar Arquivo Sequencial Original;

renomeiar Arquivo de Atualização para Arquivo Sequencial Original.

}

Pesquisa:

Procedimento procura(char vetor[], inteiro tamanho, char elementoProcurado) {

inteiro i;

faça de i = 0 até i

{ se (vetor[i] == elementoProcurado) {

retorna i; }

}

retorna -1;

}

- Desenvolva o algoritmo para Inserção, Pesquisa e Remoção no Arquivo Indexado. Explique e justifique o formato de índice utilizado.

Inserção:

posição do registro.

void inserirArquivoIndexado(tipoEstrutura registro)

{

Abrir arquivo como escrita apontando para o final do arquivo;

Gravar registro no arquivo;

Identificar posição de inserção do registro;

posicaoArquivo

...

Baixar como  txt (22.7 Kb)   pdf (82.3 Kb)   docx (588.7 Kb)  
Continuar por mais 12 páginas »
Disponível apenas no Essays.club