Baixe o app para aproveitar ainda mais
Prévia do material em texto
Avaliação: CCT0260_AV_201409284891 » ESTRUTURA DE DADOS Tipo de Avaliação: AV Aluno: 201409284891 - WELLINGTON NASCIMENTO DE SOUZA Professor: ANITA LUIZA MACIEL LOPES Turma: 9003/AC Nota da Prova: 6,0 Nota de Partic.: 1 Av. Parcial.:2 Data: 19/11/2015 19:09:01 (F) 1a Questão (Ref.: 236313) Pontos: 1,5 / 1,5 No dia 20 de fevereiro de 2002(20022002), vivenciou-se um momento que só acontecerá novamente em 21 de dezembro de 2112(21122112). Acredito que muitas pessoas não tinham familiaridade com o termo capicua que, segundo o dicionário do Aurélio, se aplica a um grupo de algarismos que lidos da esquerda para direita, ou da direita para esquerda, representam o mesmo número. Construa uma função que receba um número inteiro longo e retorne o número escrito de trás para frente. Exemplo: recebe 123 e retorna 321. Resposta: long long int espelha (long long int num) {long long int espelhado =0; while (num > 0) { espelhado = 10* + num %10; num=num/10;} return espelhado;} Gabarito: long long int espelha(long long int num ) //pode ser long long { long long int espelhado=0; //pode ser long long while (num > 0) { espelhado = 10 * espelhado + num % 10; num = num / 10; } return espelhado; } 2a Questão (Ref.: 49194) Pontos: 0,0 / 1,5 const int TAMMAX = 100; struct TipoLista{ int qtde; // descritor que representa a quantidade de elementos na lista int elemt[TAMMAX]; }; Fundamento no tipo de dado(registro) acima que representa uma implementação de uma lista linear sequencial. Construa um procedimento para adicionar um dado no final da lista. BDQ Prova http://simulado.estacio.br/bdq_prova_resultado_preview.asp 1 de 6 25/11/2015 17:10 A lista e o dado serão passados por parâmetro. Usar o mecanismo de passagem por referência se for necessário. Resposta: . Gabarito: void addFinalLista ( TipoLista &lista, int dado ){ if(lista.qtde == TAMMAX){cout << "Lista Cheia."; } else{ lista.elemt[lista.qtde] = dado; lista.qtde++; cout << "Dado adicionado com sucesso."; } } 3a Questão (Ref.: 619021) Pontos: 0,5 / 0,5 Os irmãos Silva irão viajar por vários países da Europa e por isso, traçaram no mapa o percurso que farão, de cidade a cidade. Qual a estrutura de dados mais adequada para modelar este problema ? Pilha Fila Grafo Lista Árvore 4a Questão (Ref.: 609834) Pontos: 0,5 / 0,5 Considere a função: void dobro(int x) { x = 10 * x; } Qual será o valor impresso na tela quando o programa principal for executado? int main() { int n; n = 5; dobro(n); cout << n; return 0; } 0 5 Haverá um erro de compilação 10 BDQ Prova http://simulado.estacio.br/bdq_prova_resultado_preview.asp 2 de 6 25/11/2015 17:10 50 5a Questão (Ref.: 27608) Pontos: 0,5 / 0,5 Qual das seguintes estruturas de dados é classificada como heterogênea? Pilha Fila Vetor Registro Loop Gabarito Comentado. 6a Questão (Ref.: 28029) Pontos: 0,0 / 0,5 Analise o seguinte trecho de algoritmo de ordenação de dados, cujos elementos estão dispostos em um vetor de nome v com n elementos. ... { int i, j, aux; for (j = 1; j < n; j++) for (i=j; i > 0 && v[i-1]> v[i]; i--) { aux = v[i-1]; v[i-1] = v[i]; v[i] = aux; } } ... Assinale o método ao qual o trecho de algoritmo pertence. Bolha Inserção Quicksort Heapsort Seleção Gabarito Comentado. 7a Questão (Ref.: 19681) Pontos: 0,5 / 0,5 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: BDQ Prova http://simulado.estacio.br/bdq_prova_resultado_preview.asp 3 de 6 25/11/2015 17:10 tanto o sistema I, quanto o II, adotam o esquema FIFO de organização de dados. tanto o sistema I, quanto o II, adotam o esquema vetor de organização de dados. tanto o sistema I, quanto o II, adotam o esquema LIFO de organização de dados. o sistema I, adota o esquema LIFO de organização de dados e o II, o esquema FIFO. o sistema I, adota o esquema LIFO de organização de dados e o II, o esquema LIFO. Gabarito Comentado. 8a Questão (Ref.: 230390) Pontos: 0,5 / 0,5 As pilhas sequenciais são estruturas que guardam a ordem reversa dos dados nelas armazenados, e isto em muitas ocasiões é muito vantajoso. A operação usada para inserir um elemento X numa pilha é conhecida na literatura como PUSH (X). Para remover um elemento de uma pilha a operação é o POP( ). Assim estas duas funções devem implentar o algoritmo LIFO (Last In - First Out ) ou o último a entrar é o primeiro a sair. Sendo assim se aplicarmos as seguintes operações em uma PILHA vazia: PUSH(10),PUSH(5),POP(),PUSH(7),POP(),PUSH(2),POP(),POP( ). Quais valores restarão na pilha? Apenas o 2 7 e 2 Nenhum, a pilha estará vazia. Apenas o 10 10 e 2 Gabarito Comentado. 9a Questão (Ref.: 566687) Pontos: 1,0 / 1,0 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 I, II, III e V estão corretas I e III estão corretas III e V estão corretas II e V estão corretas I e IV estão corretas 10a Questão (Ref.: 675653) Pontos: 1,0 / 1,0 Considere uma lista duplamente encadeada não circular em que struct nodupla { int dado; struct nodupla *dlink; // aponta p/ o nó à direita BDQ Prova http://simulado.estacio.br/bdq_prova_resultado_preview.asp 4 de 6 25/11/2015 17:10 struct nodupla *elink; // aponta p/ o nó à esquerda }; sendo nodupla *p; //ponteiro para o início da lista A opção que corretamente mostra as instruções para inserir um valor no início da lista apontada por p é : nodupla *novo; novo = new nodupla; novo.dado = valor; novo.dlink = p; novo.elink = NULL; if (p != NULL) p.elink = novo; p = novo; nodupla *novo; novo = new nodupla; novo->dado = valor; novo->dlink = p; novo->elink = NULL; if (p != NULL) p->elink = novo; p = novo; nodupla *novo; novo = new nodupla; novo->dado = valor; novo->dlink = p; novo->elink = NULL; p->elink = novo; p = novo; n nodupla *novo; novo = new nodupla; novo->dado = valor; novo->elink = NULL; if (p != NULL) p->elink = novo; p = novo; n nodupla *novo; novo = new nodupla; novo->dado = valor; novo->dlink = p; if (p != NULL) p->elink = novo; p = novo; Gabarito Comentado. Período de não visualização da prova: desde 12/11/2015 até 24/11/2015. BDQ Prova http://simulado.estacio.br/bdq_prova_resultado_preview.asp 5 de 6 25/11/2015 17:10 BDQ Prova http://simulado.estacio.br/bdq_prova_resultado_preview.asp 6 de 6 25/11/2015 17:10
Compartilhar