Baixe o app para aproveitar ainda mais
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!
Compartilhar