Buscar

AP2 Estrutura de Dados

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Avaliação Parcial: CCT0753_SM_201207133485 V.1 
Aluno(a): Matrícula: 
Acertos: 8,0 de 10,0 Data: 17/04/2018 10:07:34 (Finalizada) 
 
 
1a Questão (Ref.:201207822370) Acerto: 0,0 / 1,0 
Assinale a alternativa correta sobre tipos abstratos de dados: 
 
 Um tipo abstrato de dados é um modo particular de armazenamento e organização de dados em um 
computador de modo que possam ser usados eficientemente. 
 
Um tipo abstrato de dados deve sempre ser representado por meio dos recursos específicos de uma 
linguagem de programação. 
 
É fundamental que os tipos abstratos de dados proponham um conjunto eficiente de algoritmos para 
realização de suas operações. 
 Um tipo abstrato de dados é composto por um modelo de dados e um conjunto de operadores 
definidos sobre esses dados. 
 
Um tipo abstrato de dados descreve, além do que se pode fazer com os dados, como as operações 
serão efetivamente implementadas. 
 
 
 
2a Questão (Ref.:201208319315) Acerto: 1,0 / 1,0 
Das estruturas de dados a seguir aquela que NÃO é uma estrutura linear é : 
 
 
Vetor. 
 Grafo. 
 
Lista. 
 
Pilha. 
 
Fila. 
 
 
 
3a Questão (Ref.:201207377211) Acerto: 1,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 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 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 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". 
 
O código compila normalmente e apresenta como resultado o valor 7.0 
 
 
Gabarito Coment. 
 
 
 
4a Questão (Ref.:201207174981) Acerto: 1,0 / 1,0 
A declaração de variáveis na programação é o ato de reservar um espaço na memória para poder armazenar 
valores de um determinado tipo. Essas variáveis podem ser classificadas como variáveis locais e globais. 
Sendo assim, qual das situações abaixo representa melhor o conceito das variáveis globais. 
 
 
Em duas funções diferentes temos duas variáveis também diferentes com o mesmo nome 
apresentando o mesmo valor. 
 
Se modificarmos o valor da variável 'Y' na função "soma", e depois imprimirmos na tela esta variável 
em outra função, onde tambem está declarada a variável 'Y', será acusado um erro de compilação. 
 
Em uma função "resul" tem-se uma variável ali declarada por 'T' que recebe o valor inteiro 5. Ao 
tentar chamar esta variável em outra função é mencionado um warning. 
 
Se dentro de uma função "mostra" declararmos uma variável 'R' com um determinado valor 
poderemos imprimir esta variável em qualquer outra função do programa mostrando o valor 
atribuído na função "mostra". 
 Ao modificar o valor da variável 'X' na função "modifica" seu valor modificado poderá ser 
apresentado em qualquer outra função do programa. 
 
 
Gabarito Coment. 
 
 
 
5a Questão (Ref.:201207788506) Acerto: 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. 
 
 vet[10].nota=5.7; 
 
vet[10].aluno.nota=5.7 ; 
 
aluno.vet[10]=5.7; 
 
aluno.vet[10].nota=5.7; 
 
vet[10]=aluno.5.7; 
 
 
 
6a Questão (Ref.:201207174441) Acerto: 1,0 / 1,0 
Qual das seguintes estruturas de dados é classificada como heterogênea? 
 
 
Loop 
 
Fila 
 
Vetor 
 Registro 
 
Pilha 
 
 
Gabarito Coment. 
 
 
 
7a Questão (Ref.:201207174867) Acerto: 1,0 / 1,0 
O resultado do concurso para o cargo de uma empresa está armazenado em um vetor, que contém em cada 
um de seus elementos o número de inscrição, o nome e a nota obtida pelo candidato. Este vetor está 
ordenado pelo número de inscrição. Para realização de uma consulta que, dado um número de inscrição, 
apresenta o nome e nota do candidato, um programador utilizou um algoritmo de busca que realiza 
sucessivas divisões no vetor, comparando o número de inscrição procurado com o número de inscrição do 
candidato posicionado no meio do vetor. Se o candidato posicionado do meio do vetor tiver o número de 
inscrição igual ao número de inscrição procurado, a busca termina com sucesso. Caso contrário, se 
candidato posicionado do meio do vetor tiver número de inscrição menor que o procurado, então a busca 
continua na metade posterior do vetor. E finalmente, se candidato posicionado do meio do vetor tiver 
número de inscrição maior que o procurado, a busca continua na metade anterior do vetor. O algoritmo 
utilizado pelo programador trata-se do método denominado busca: 
 
 binária. 
 
randômica. 
 
por comparação. 
 
linear. 
 
por contagem. 
 
 
Gabarito Coment. 
 
 
 
8a Questão (Ref.:201207174608) Acerto: 1,0 / 1,0 
Qual a importância de se entender a "ordenação" de dados ? 
 
 
A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, tem-se 
conhecimento para manter outros problemas. 
 
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, tem-se 
conhecimento para manter outros problemas. 
 
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, tem-se 
conhecimento para resolver outros problemas. 
 
A ordenação é a base na qual, muitos programas são construídos. Entendendo a ordenação, tem-se 
conhecimento para manter outros problemas. 
 A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, tem-se 
conhecimento para resolver outros problemas. 
 
 
Gabarito Coment. 
 
 
 
9a Questão (Ref.:201207738671) 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 Sequencial 
 
Lista Não Linear 
 
Lista Linear de Alocação de Memória 
 
Lista Linear Não Sequencial 
 
 
 
10a Questão (Ref.:201207379705) Acerto: 0,0 / 1,0 
 
 
 for (int i = 0; i < n; i++) 
 cout << L[i].matricula << " " << L[i].nome << endl; 
 for (int i = 0; i < n; i++) 
 cout << L[i] << endl; 
 for (int i = 0; i < n; i++) 
 cout << L.matricula[i] << " " << L.nome[i] << endl; 
 for (int i= 0; i < n; i++) 
 cout << L.matricula << " " << L.nome << endl; 
 for (int i = 0; i < n; i++) 
 cout << L[i].matricula << " " << L[i].nome[30] << endl; 
 
 
Gabarito Coment.

Continue navegando

Outros materiais