Buscar

Atv_Listas_Pilhas_Filas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

Estrutura de Dados 
André Lira Rolim 
Atividade Prática Avaliativa 
Listas, Pilhas e Filas 
 
Confronto nº 1: 
 
1)Pesquise sobre as torres de Hanói. Desenvolva uma solução utilizando 
pilhas. 
 
2)Existem partes de sistemas operacionais que cuidam da ordem em que os 
programas devem ser executados. Por exemplo, em um sistema de 
computação de tempo compartilhado (“time-shared”) existe a necessidade 
de manter um conjunto de processos em uma fila, esperando para serem 
executados. Escreva um programa que seja capaz de ler uma série de 
solicitações para: 
 
a) Incluir novos processos na fila de processo; 
b) Retirar da fila o processo com o maior tempo de espera; 
c) Imprimir o conteúdo da lista de processo em determinado 
momento. 
 
 Assuma que cada processo é representado por um registro composto por 
um número identificador do processo. 
 
Confronto nº2: 
 
1)Imaginem uma Empresa que é constituída de Diretores, Coordenadores 
e Funcionários. Esta empresa possui apenas 1 impressora. Implemente um 
programa que controle o Spooler de impressão através de uma Fila com as 
seguintes prioridades: O Diretor (1), Coordenador(2) e Funcionário(3). Faça 
uma função para imprimir a Fila. 
 
2) Crie um sistema acadêmico que armazene informações de Alunos, 
Cursos, Turmas e Professores. O Sistema deve ter as seguintes 
Funcionalidades: 
 
a) Opção para Listar TODOS Alunos, Cursos, Turmas ou 
Professores; 
b) Mostrar informações de qualquer entidade individual; 
c) Adicionar as Entidades; 
d) Remover Entidades; 
 
Considere cada Entidade como um novo Tipo (TAD, typedef) e os armazene 
ordenados em uma Lista (TAD) para cada um. 
 
 
Confronto nº3: 
 
1)Escreva um programa que simule o controle de uma pista de decolagem 
de aviões em um aeroporto. Neste programa, o usuário deve ser capaz de 
realizar as seguintes tarefas: 
 
a)Informar o número de aviões aguardando na fila de decolagem; 
b) Autorizar a decolagem do primeiro avião da fila; 
c) Adicionar um avião à fila de espera; 
d) Listar todos os aviões na fila de espera; 
e) Listar as características do primeiro avião da fila. 
 
Considere que os aviões possuem um nome e um número inteiro como 
identificador. Adicione outras características conforme achar necessário. 
 
2)Escreva um programa para checar o balanceamento de símbolos. 
Dependendo da linguagem utilizada, o conjunto dos símbolos pode variar. 
Por exemplo, em Pascal seriam: begin/end, ( ), [ ], { }; enquanto que em C: /* 
*/, ( ), [ ], { }. 
 
 
Tabela de Pontuação 
Pontuação Concorrência Critério 
Até 10,0 1 Enviar primeiro 
Até 9,0 1 Enviar segundo 
Até 8,0 Demais Demais 
 
Data Limite para o envio: 16/08/2019 
 
Regras: 
 
1. Cada Grupo deve enviar o código para o Google Classroom da disciplina até a 
data Limite. 
2. A concorrência da pontuação da tabela será entre os grupos sorteados nos 
seus respectivos confrontos. 
3. Nomeie o arquivo de envio com o nome do Grupo. (Grupo 1, Grupo 2 ...) 
4. Os trabalhos enviados deverão ser apresentados individualmente para o 
professor durante horários estabelecidos por ele. 
5. Cada Grupo só tem o direito de pontuar 1 vez (ou seja, um envio de apenas). 
6. Os TADs Lista, Pilha e Fila, devem está implementados modulados (.h e .c) 
conforme visto em sala de aula. O módulo principal, que contém o método 
main(), deve ser organizado de modo a responder as questões apenas, fazendo 
uso dos TADs já implementados. 
Bom Trabalho!

Outros materiais