Baixe o app para aproveitar ainda mais
Prévia do material em texto
05/11/2018 EPS http://estacio.webaula.com.br/Classroom/index.html?id=2212480&classId=984875&topicId=2652602&p0=03c7c0ace395d80182db07ae2c30f034… 1/4 PATRICK LUIZ DUQUE DE PAULA NASCIMENTO 201708228411 EAD JUIZ DE FORA II - MG ESTRUTURA DE DADOS Avaliação Parcial: CCT0753_SM_201708228411 V.1 Aluno(a): PATRICK LUIZ DUQUE DE PAULA NASCIMENTO Matrícula: 201708228411 Acertos: 8,0 de 10,0 Data: 05/11/2018 19:45:51 (Finalizada) 1a Questão (Ref.:201709153429) Acerto: 1,0 / 1,0 O que é estrutura de dados? É um conjunto de comandos para uma tarefa específica referenciada por um nome no algoritmo principal, retornando um determinado valor no seu próprio nome. É uma sequência finita de instruções bem definidas e não ambíguas, cada uma das quais devendo ser executadas mecânica ou eletronicamente em um intervalo de tempo finito e com uma quantidade de esforço finita. É um conjunto de técnicas de programação. É um modo particular de armazenamento e organização de dados em um computador de modo que possam ser usados eficientemente. É uma forma determinada de armazenamento de dados em um banco de dados. 2a Questão (Ref.:201708870273) Acerto: 1,0 / 1,0 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 ? Lista Grafo Árvore Pilha Fila 3a Questão (Ref.:201708282200) Acerto: 1,0 / 1,0 No programa abaixo, diga em que área de memória serão alocados os elementos de dados y e r, respectivamente. #include using namespace std; int x, y; float media( float a, float b ) { float tmp; tmp = (a + b ) / 2.0; return ( tmp ); } int main() { float r; cout<<"Informe 2 valores: "; cin>>x>> y; r = media( x, y ); cout<<"\nMedia = "<< r<<"\n"; 05/11/2018 EPS http://estacio.webaula.com.br/Classroom/index.html?id=2212480&classId=984875&topicId=2652602&p0=03c7c0ace395d80182db07ae2c30f034… 2/4 system ("pause"); } ( ) área de registro / área de dados globais ( ) área de registro / área de pilha ( ) área de pilha / área de registro ( ) área de dados globais / área de registro ( ) área de dados globais / área de pilha 4a Questão (Ref.:201711085242) Acerto: 1,0 / 1,0 Diga, para o trecho do programa abaixo, qual a opção que representa a saída em tela. Considere que o programa será compilado sem erros e irá executar também sem problemas . void troca (int x, int y){ int tmp; tmp = y; y = x; x = tmp; } int main( ) { int a = 13, b = 10; troca( a, b ); cout<<"Valores: "<< a<<"\t"<< b<<< endl; system("pause"); } Valores: 31 01 Valores: 10 13 Valores: 13 10 Valores: 10 10 Valores: 13 13 5a Questão (Ref.:201708279034) Acerto: 0,0 / 1,0 Marque a afirmativa correta para a "Inserção em lista linear sequencial ordenada". Consiste em adicionar um valor no vetor, mantendo a ordem existente e ajustando o total de elementos. Consiste em fazer uma busca em um vetor já ordenado, dividindo o espaço de busca ao meio e verificando se o dado está no meio ou, antes do meio ou depois do meio. É o processo pelo qual um conjunto de dados é colocado em uma ordem crescente ou decrescente. Consiste em adicionar um valor no vetor, alterando a ordem existente e ajustando o total de elementos. Consiste em fazer uma busca em um vetor desordenado, dividindo o espaço de busca ao meio e verificando se o dado está no meio ou, antes do meio ou depois do meio. 6a Questão (Ref.:201708279380) Acerto: 1,0 / 1,0 Os métodos de ordenação são muito utilizados em estruturas de dados para facilitar a busca e a recuperação posterior de itens de conjuntos ordenados. Existem vários métodos de ordenação, por este motivo, marque corretamente a alternativa que apresenta o código do método de seleção. void ordena (int v[], int n){ 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; } } int ordena(float v[], float valor, int n){ for (int i = 0; i < n; i++) if (v[i] == valor) return i; return -1; } 05/11/2018 EPS http://estacio.webaula.com.br/Classroom/index.html?id=2212480&classId=984875&topicId=2652602&p0=03c7c0ace395d80182db07ae2c30f034… 3/4 int ordena(float v[], float valor, int n) { int ini = 0, fim = n -1, meio; while (ini <= fim){ meio = (ini + fim)/2; if (v[meio] == valor) return meio; if (valor < v[meio]) fim = meio -1; else ini = meio+1; } return -1; } int ordena(float v[], float valor, int n) { int ini = 0, fim = n-1, meio; while (ini >= fim){ meio = ini/2; if (v[meio] == valor) return meio; if (valor < v[meio]) fim = meio -1; else ini = meio+1; } void ordena(int v[], int n){ int i, j, menor, aux; for (j = 0; j < n-1; j++) { for (i = j+1; i < n; i++) { if (v[i] < v[j]) { aux = v[j]; v[j] = v[i]; v[i] = aux; } } } } Gabarito Coment. 7a Questão (Ref.:201708282432) Acerto: 1,0 / 1,0 Existem vários algoritmos de busca em estruturas de dados, um destes realiza a busca em vetores, e requer acesso aleatório aos elementos desta estrutura e parte do pressuposto de que os dados do vetor estejam ordenados e utiliza a técnica de divisão e conquista comparando o elemento desejado com o elemento do meio do vetor. Esta técnica ainda verifica se o elemento do meio do vetor for o desejado, a busca termina. Caso contrário, se o elemento do meio vier antes do elemento buscado, então a busca continua na metade posterior do vetor. E se o elemento do meio vier depois da chave, a busca continua na metade anterior do vetor. O algoritmo que utiliza esta metodologia é: Seleção Bolha Pesquisa binária Inserção Pesquisa sequencial Gabarito Coment. 8a Questão (Ref.:201709113767) Acerto: 0,0 / 1,0 Qual característica NÃO podemos atribuir a PESQUISA BINÁRIA. A lista pode estar desordenada. Quando o valor pesquisado é maior do que a chave do MEIO da lista, devemos dispensar a metade que vem antes do meio da lista. É eficiente quando se trata de listas ordenadas São realizadas sucessivas divisões da lista ao meio. A lista precisa estar ordenada. 05/11/2018 EPS http://estacio.webaula.com.br/Classroom/index.html?id=2212480&classId=984875&topicId=2652602&p0=03c7c0ace395d80182db07ae2c30f034… 4/4 9a Questão (Ref.:201708279223) Acerto: 1,0 / 1,0 Com relação as listas lineares sequenciais: I - Uma lista linear sequencial é um vetor em linguagens estruturadas, também chamado de array. II - Um elemento de uma lista linear sequencial pode ser acessado diretamente através de um índice. III - Uma lista linear sequencial pode ter elementos de um mesmo tipo, ou de tipos diferentes. Apenas as afirmações II está corretas. Apenas as afirmações II e III estão corretas. Apenas as afirmações I e II estão corretas. Apenas a afirmação I está correta. Apenas as afirmações I e III estão corretas. Gabarito Coment. 10a Questão (Ref.:201708843090) Acerto: 1,0 / 1,0 __________________________ é uma lista linear em que a alocação de memória pode ser estática, e que a forma de armazenamento é contígua ou sequencial na memória. Usamos este tipo de lista quando se tem em mente um tamanho pré-definido, ou seja, quando se sabe até onde a lista pode crescer. Lista Linear Não Alocada Lista Linear de Alocação de MemóriaLista Linear Não Sequencial Lista Não Linear Lista Linear Sequencial
Compartilhar