Baixe o app para aproveitar ainda mais
Prévia do material em texto
Fechar Avaliação: CCT0260_AV» ESTRUTURA DE DADOS Tipo de Avaliação: AV Aluno: Professor: JANE TAVARES ALVAREZ DA SILVA Turma: Nota da Prova: 5,3 Nota de Partic.: 0,5 Av. Parcial 2 Data: 25/11/2017 10:20:38 1a Questão (Ref.: 201603441139) Pontos: 1,0 / 1,0 Qual a diferença entre pilha e fila? Resposta: A estrutura de pilha é utilizada no LIFO. Onde o último que entra é o primeiro que sai. Já na estrutura de fila, a FIFO. O primeiro dado que entra é o primeiro que sai. Gabarito: Pilha se caracteriza por ser uma estrutura de dados que são inseridos e retirados numa sequencia semelhante as anilhas de alteres, isto é, usa a lógica LIFO. Já uma fila se caracteriza por ser um estrutura semelhante a fila de banco, isto é, os dados vão chegando e sendo processados e retirados da estrutura. Essa lógica é chamada de FIFO. 2a Questão (Ref.: 201604052561) Pontos: 0,3 / 1,0 Cite três aplicações clássicas em que se possa usar a estrutura de dados pilha. Resposta: Onde uma última informação ou ação inserida, deverá ser a primeira a ser executada; Cartas empilhadas, onde o jogador deverar utilizar da última da pilha, até a primeira; Dados estruturados de maneira invertida, a modo de que o sistema execute com prioridade o último comando ou programa, por exemplo, para dar prioridade. Gabarito: Possibilidades de respostas : 1. Histórico de páginas visitadas num navegador. 2. Implementação de recursividade (a torre de Hanói que vimos na disciplina de Algoritmos). 3. Sequência de desfazer em vários softwares, o famoso atalho Ctrl Z. 4. A cadeia de chamadas de funções num programa. 5. Avaliação de expressões aritméticas. 6. Conversão de Decimal para Binário 3a Questão (Ref.: 201603988295) Pontos: 1,0 / 1,0 A forma correta para imprimir o valor do último elemento de um vetor v com n posições é: cout << v[n+1]; cin >> v[-1]; cout << v[ultimo]; cout << v[n]; cout << v[n-1]; 4a Questão (Ref.: 201603612955) Pontos: 0,0 / 1,0 Funções são instrumentos de modularização de programas, que tem como finalidade tornar o código mais legível, isto é mais fácil de entender, evita replicação de instruções e permite o reuso das funções em outros programas. Então considere o seguinte código: #include< iostream > using namespace std; int main( ) { float a=10.0; float b=4.0; cout < < media(a,b); return 0; } float media(float x, float y) { return (x+y)/2;} Marque a alternativa CORRETA: O código compila normalmente, pois como a descrição da função float media(float x, float y)está posicionada após a função int main ( ), não há necessidade do uso de protótipos. O código compila normalmente e apresenta como resultado o valor 7.0 O código não compila, pois há necessidade de se declarar float media(float, float) como protótipo da função float media(float x, float y)antes da função principal. O código não compila, pois a função float media(float x, float y) retorna um valor que seria ser armazenado em uma variável do tipo float e só então poderia ser usado o comando cout para exibir o resultado. O código não compila, pois os parâmetros usados na chamada da função deveriam ser "x" e "y"; porém a chamada se deu com identificadores "a" e "b". 5a Questão (Ref.: 201604050039) Pontos: 1,0 / 1,0 Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob uma lógica e associados por um nome. Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de uma estrutura como: struct aluno { string nome; float nota; }; Suponha ainda que exista um vetor desta estrutura, definido como: aluno vet [ 100]; Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento deste vetor. aluno.vet[10].nota=5.7; aluno.vet[10]=5.7; vet[10].aluno.nota=5.7 ; vet[10]=aluno.5.7; vet[10].nota=5.7; 6a Questão (Ref.: 201603410697) Pontos: 0,0 / 1,0 Os métodos de ordenação são muito utilizados para facilitar a recuperação posterior de itens ordenados. Existem vários métodos de ordenação, por esse motivo, assinale corretamente a alternativa que mostra o nome do método que utiliza a estratégia de ordenação por trocas de vizinhos e é considerado o método mais simples. Binária Inserção Seleção Hash Bolha 7a Questão (Ref.: 201603402258) Pontos: 1,0 / 1,0 Um órgão público adotou dois sistemas de senhas para atender os cidadãos na ordem de chegada. O sistema I atende os não idosos. O sistema II atende os idosos. Nessa situação: o sistema I, adota o esquema LIFO de organização de dados e o II, o esquema LIFO. tanto o sistema I, quanto o II, adotam o esquema LIFO de organização de dados. tanto o sistema I, quanto o II, adotam o esquema vetor de organização de dados. o sistema I, adota o esquema LIFO de organização de dados e o II, o esquema FIFO. tanto o sistema I, quanto o II, adotam o esquema FIFO de organização de dados. 8a Questão (Ref.: 201603648558) Pontos: 1,0 / 1,0 Tei Ping, estudante de computação, precisou implementar parte de um jogo que trabalhava com cartas especiais. Cada carta possui um número e uma letra. Alguns jogadores teriam que jogar as cartas na mesa, enquanto outros deveriam devolver as cartas na sequência inversa à jogada. Tei Ping estudou o mecanismo do jogo e decidiu usar a melhor estrutura de dados na sua implementação. Qual a estrutura escolhida ? lista pilha fila árvore grafo 9a Questão (Ref.: 201603949264) Pontos: 0,0 / 0,5 Na Alocação dinâmica, temos alguma regras a considerar. Leia atentamente as afirmativas abaixo e assinale a correta. I Alocou com new, desaloca com free II Alocou com new[], desaloca com delete III Alocou com new[], desaloca com delete[] IV Alocou com new[], desaloca com free[] V Alocou com new, desaloca com delete III e V estão corretas I, II, III e V estão corretas II e V estão corretas I e IV estão corretas I e III estão corretas 10a Questão (Ref.: 201604116487) Pontos: 0,0 / 0,5 Estava um aluno estudando Lista Simplesmente Encadeada quando encontrou em um site a definição da struct nodo e de uma função cujo nome você deverá escolher para substituir XXX nas opções abaixo depois que analisar a função, assumindo que teste foi realizado, permitindo que a operação fosse realizada. struct nodo { int info; struct nodo *prox; }; nodo* XXX(nodo *ptr, int valor) { nodo *temp = new nodo; ... temp->info = valor; temp->prox = ptr; return temp; } BuscaNaLista ListaNo InsereNoFim InsereNoFrente RemoveNo Período de não visualização da prova: desde 16/11/2017 até 28/11/2017.
Compartilhar