Baixe o app para aproveitar ainda mais
Prévia do material em texto
Avaliação On-Line Avaliação: AV2-2012.1 EAD- ESTRUTURA DE DADOS-CCT0174 Disciplina: CCT0174 - ESTRUTURA DE DADOS Tipo de Avaliação: AV2 Aluno: 201001509341 - RAPHAEL DA SILVA ROMA Nota da Prova: 4 Nota do Trabalho: Nota da Participação: 0 Total: 4 Prova On-Line Questão: 1 (127056) Sabe-se que um protótipo de uma função é o cabeçalho da função com ;(ponto-e-vírgula) ao final. E que nas funções a passagem de parâmetros se dá por valor ou por referência. Para o protótipo: void troca(float&,float&); pode-se dizer que: Pontos da Questão: 0,5 É um protótipo de função que recebe dois argumentos por passagem de valor. Os dois do tipo real e retorna, para a função chamadora, um valor inteiro. É um protótipo de função que recebe dois argumentos reais e retorna, para a função chamadora, um valor real. É um protótipo de função que recebe dois argumentos que são endereços que armazenam números reais, por passagem por referência. E a função não retorna nada para a função chamadora. É um protótipo de função que recebe dois argumentos reais por passagem de valor e não retorna nada para função chamadora. É um protótipo de função que recebe dois argumentos por passagem de valor. Um do tipo char e outro do tipo int, mas não retorna nada para função chamadora. Questão: 2 (129248) Para o cadastro de algumas notas e médias de alunos, foi criada a seguinte estrutura e declarada como global: struct aluno{ float nota1, nota2,media; }alunos[20]; Sabendo-se que a média deve ser obtida através de cálculo: - a partir das notas armazenadas na estrutura; - em seguida ser armazenada na estrutura e; - retornada a quem chamou; Qual das funções abaixo executa este processo de forma correta. Pontos da Questão: 1 float calcmedia(){ float m; m = (alunos[i].nota1+ alunos[i].nota2)/2; alunos[i].media= m; return m; Página 1 de 6Visualização de Prova 02/07/2012https://sia.estacio.br/portal/prt0010a.asp?p1=3745229&p2=10072&p3=1135304 } float calcmedia(int i){ float m; m = (aluno[i].nota1+ aluno[i].nota2)/2; aluno[i].media= m; return m; float calcmedia(int i){ float m; m = (alunos[i].nota1+ alunos[i].nota2)/2; alunos[i].media= m; } float calcmedia(int i){ float m; m = (alunos[i].nota1+ alunos[i].nota2)/2; alunos[i].media= m; return m; } void calcmedia(int i){ float m; m = (alunos[i].nota1+ alunos[i].nota2)/2; alunos[i].media= m; } Questão: AV32011CCT01740216 (169121) 3 - Página 2 de 6Visualização de Prova 02/07/2012https://sia.estacio.br/portal/prt0010a.asp?p1=3745229&p2=10072&p3=1135304 Escreva uma função que permita inserir dados em uma lista duplamente encadeada de forma seqüencial, com o preenchimento de 3 nós, baseado na estrutura apresentada. A função deverá receber o nó inicial e não retornar nada. struct num_letra { int num; char letra; struct num_letra *ant, *post; }; Pontos da Questão: 1,5 Resposta do Aluno: Gabarito: void insere(num_letra *no){ num_letra *aux; for (int i=0;i<3;i++){ no->num = i; no->letra= i+65; if (i==0){ no->ant=NULL; no->post=NULL; }else{ aux= no-1; aux->post=no; no->ant=aux; no- >post=NULL; } no++; } } Fundamentação do Professor: Pontos do Aluno: void insere(num_letra *no){ num_letra *aux; for (int i=0;i<3;i++){ no->num = i; no->letra= i+65; if (i==0){ no->ant=NULL; no->post=NULL; }else{ aux= no-1; aux->post=no; no->ant=aux; no- >post=NULL; } no++; } } 0 Questão: 4 (127836) Com relação à struct, é correto afirmar que : Pontos da Questão: 0,5 Não é possível criar um vetor de structs, pois o vetor trabalha apenas com dados do mesmo tipo. A struct é sempre definida dentro da main. Cada elemento da struct é chamado componente. Cada elemento da struct é chamado campo e cada campo deve ser, obrigatoriamente, de um tipo de dados distinto de outro campo. Cada elemento da struct é denominado membro ou campo, sendo que a struct pode armazenar elementos de tipos diferentes ou não. Questão: AV22011CCT01740002 (138206) 5 - Defina, exemplifique e cite as vantagens da busca binária. Pontos da Questão: 1,5 Resposta do Aluno: Divide o local de armazenamento a ser pesquisado e pesquisa por parte, obtendo como vantagem o fato de não ter a obrigação de percorrer toda a estrutura caso encontre logo no início da busca, gerando agilidade. Numa pesquisa de dois números em um cenário de vinte números ao total, divide-se o total e inicia-se a pesquisa nos blocos. Gabarito: Permite 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, comparando o valor de busca com o elemento da lista a ser procurado A busca binária é mais rápida que a seqüencial na maioria das vezes. A busca de uma palavra em um dicionário, com a busca seqüencial, se a palavra desejada estiver no final do dicionário levaria muito tempo indo de página em página. Fundamentação do Professor: Permite 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, comparando o valor de busca com o elemento da lista a ser procurado A busca binária é mais rápida que a seqüencial na maioria das vezes. A busca de uma palavra em um dicionário, com a busca seqüencial, se a palavra Página 3 de 6Visualização de Prova 02/07/2012https://sia.estacio.br/portal/prt0010a.asp?p1=3745229&p2=10072&p3=1135304 Pontos do Aluno: 0,5 Questão: 6 (138183) A alocação dinâmica de memória vem possibilitar a criação de tipos de dados e estruturas de qualquer tamanho durante a execução do programa. Quais são os operadores que respectivamente alocam e liberam espaço na memória? Pontos da Questão: 0,5 insere e apaga. novo e deleta. new e delete. insert e delete. aloc e maloc. Questão: 7 (139408) As listas simplesmente encadeadas tem como característica. Marque a resposta correta. Pontos da Questão: 0,5 Possuir um nó com o máximo de dois elementos, sendo um deles um ponteiro para o próximo nó. Possuir um nó com no mínimo dois elementos, sendo um deles um ponteiro para o próximo nó. Possuir um nó com o máximo de três elementos, sendo dois ponteiros que indicam o nó anterior e o próximo. Possuir um nó com apenas um elemento, sendo este um ponteiro para o próximo nó. Possuir um nó com três elementos, sendo dois ponteiros que indicam o nó anterior e o próximo. Questão: 8 (139724) Nas listas encadeadas podemos fazer referência a uma parte de um nó, através de um outro nó. Na estrutura apresentada o ponteiro p armazena o endereço do próximo nó. struct teste { int valor; struct teste *p; }; Das opções apresentadas qual permite armazenar na variável val do tipo inteiro o valor que está no nó seguinte ao nó posicionado , sabendo-se que aux, contem o endereço do nó atual. Pontos da Questão: 0,5 val= aux->p->valor; val= aux->valor; val= p->p->valor; val-> aux->p->valor; val= aux->p.p; Questão: 9 (131699) Determinado método de ordenação seleciona o menor elemento dentro do conjunto e coloca na primeira posição, depois o segundo menor e coloca na segunda posição e assim por diante até que todo o conjunto esteja ordenado. Qual das opções apresenta este método? Pontos da Questão: 0,5 Merge sort; Página 4 de 6Visualização de Prova 02/07/2012https://sia.estacio.br/portal/prt0010a.asp?p1=3745229&p2=10072&p3=1135304 Quick sort; Insertion sort; Shell sort; Selection sort; Questão: 10 (139130) Considere struct nodupla { int dado; struct *dlink, //aponta para o nó à direita *elink; //aponta para o nó à esquerda }; Assinale a função que corretamente substitui o valor armazenado no último nó de uma lista duplamente encadeada não vazia pelo valor 50. Pontos da Questão: 1 void substituir(nodupla *p) { while (p.dlink != NULL) p = p.dlink; p.dado = 50; } void substituir(nodupla *p) { while (p->dlink != NULL) {p = p->dlink; p->dado = 50; } } void substituir(nodupla *p) { while (p != NULL) p = p->dlink; p->dado = 50; } void substituir(nodupla *p) { while (p->dlink != NULL) p = p->dlink; p->dado = 50; } void substituir(int dado) { while(p->dlink != NULL) p = p->dlink; p->dado = 50; } Página 5 de 6Visualização de Prova 02/07/2012https://sia.estacio.br/portal/prt0010a.asp?p1=3745229&p2=10072&p3=1135304 Fechar Server IP : 192.168.10.139 Client IP: 187.67.226.236 Tempo de execução da página : 1,266 Página 6 de 6Visualização de Prova 02/07/2012https://sia.estacio.br/portal/prt0010a.asp?p1=3745229&p2=10072&p3=1135304
Compartilhar