Baixe o app para aproveitar ainda mais
Prévia do material em texto
Atividade Estruturada Estrutura de Dados Prof. Ernesto Trajano ernesto.fic@gmail.com Resolva as questões abaixo. A atividade deve ser entregue manuscrita no dia da prova. Esta atividade vale um ponto para a AV2. 1 - Quando escrevemos um programa, parêntesis e chaves devem estar balanceadas, isto é, quando abrimos uma chave ou parêntesis, devemos fechâ-lo. Por exemplo, o seguinte trecho de código é válido int main() { int i = 5; cout << i; system(“PAUSE”); return 0; } Já o trecho de código abaixo não é válido: int main( { int j = 20; cout << j; system(“PAUSE”); return 0; Descreva e justifique que estrutura de dados podemos utilizar para garantir que cada parêntesis ou chave aberta é devidamente fechada pelo programador. Descreva, ainda, como seria o funcionamento da verificação. 2 – Considere a seguinte lista: <A,B,C>. Considere, ainda, que existe uma operação que inverte a lista, isto é, transforma a lista em <C,B,A>. Suponha que existem duas implementações disponíveis para a lista: simplesmente encadeada e duplamente encadeada. Discuta vantagens e desvantagens de cada uma das implementações. 3 – Imagine que você está implementando um sistema de controle de pedidos em um restaurante. Considere as seguintes características do restaurante: � os pedidos, ao serem passados para a cozinha, devem ser atendidos na ordem em que foram passados; � na cozinha pode haver mais de um cozinheiro; � o restaurante possui 50 mesas e 5 garçons; � o restaurante possui um bar, responsável por preparar bebidas (alcóolicas ou não). Descreva que estruturas de dados poderiam ser utilizadas para implementar este sistema de controle de pedidos. Algo deve ser modificado se, ao invés de uma única cozinha, existirem duas cozinhas: uma para preparar os pratos principais e outra para preparar entradas e sobremesas? Se sim, descreva o que deve ser modificado.
Compartilhar