Buscar

AV2 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: CCT0260_AV2_201201242673 » ESTRUTURA DE DADOS
Tipo de Avaliação: AV2
Aluno: 201201242673 - TIAGO CARDOSO FERREIRA GOMES
Professor: RAFAEL DIAS RIBEIRO Turma: 9002/AB
Nota da Prova: 4,5 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 22/11/2012
 1a Questão (Cód.: 27931) Pontos: 0,0 / 1,0
Marque a afirmativa que represente uma concatenação em listas.
 Consiste em dividir a lista em duas outras listas. A quantidade de nós que cada lista terá, depende da
necessidade.
Organizar os dados da lista em ordem crescente ou decrescente.
Intercalar a ordem dos dados da lista do final para o início, atualizando a lista.
Alterar a ordem dos dados da lista do final para o início, atualizando a lista.
 Juntar duas listas, colocando uma lista no final de outra, obtendo, ao final, uma só lista resultante.
 2a Questão (Cód.: 58562) Pontos: 1,5 / 1,5
Qual a diferença entre pilha e fila?
Resposta: Pilha - na Pilha o último dado que entra é o primeiro que sai, e o primeiro que que entra é o ultimo a sair,
como sugere o nome LIFO (Last in First out) o ultimo que entra é o primeiro que sai, ou seja, o dado entra por um
lado e sai pelo mesmo lado. Fila - Já é diferente o dado que entra primeiro sai primeiro, ou seja, o dado entra por
um lado e sai por outro lado, daí o nome FIFO(First in First Out) o primeiro a entrar é o primeiro a sair.
 3a Questão (Cód.: 56270) Pontos: 0,0 / 1,5
Considere uma lista simplesmente encadeada não circular de inteiros e o tipo 
 struct no {
 int dado;
 struct no *link;
 };
Faça uma função para inverter a lista e retornar o ponteiro para o início da lista resultante.
Protótipo : no *inverter(no *ini); //ini aponta para o início da lista
Resposta: inverter(no *ini) { if(!lista) { cout<<"\nlista vazia"; else ini->dado
BDQ Prova file:///C:/Users/Administrador/Desktop/Nova pasta/AV2 ESTRUTUR...
1 de 4 26/11/2012 15:30
 4a Questão (Cód.: 28147) Pontos: 0,5 / 0,5
Em programação podemos utilizar um recurso que modulariza o programa chamado função. As funções precisam
ser ativadas para que possam ser executadas. Para isso, é necessário chamar a função pelo seu nome e enviar,
quando necessário, os valores respectivos para os parâmetros de entrada. Ao enviar os valores para os parâmetros
de entrada, o programa pode fazer uma cópia deste valor ou trabalhar em um endereço enviado. Quando se envia o
endereço estamos ativando a função por meio de:
Registro.
Passagem por valor.
 Ponteiros.
Envio de valor.
Envio de inteiro.
 5a Questão (Cód.: 27753) Pontos: 1,0 / 1,0
Podemos dizer que estrutura de dados é:
 O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações.
É a saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
O que permite o armazenamento e a recuperação de dados independentemente de seu conteúdo.
A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente
determinada.
 6a Questão (Cód.: 27648) Pontos: 0,5 / 0,5
 
Dado o seguinte código, escrito em C++, qual a saída do programa?
#include
using namespace std;
void func1 (float x) {
cout << "X: "<< x << endl;
x = 3.5;
cout << "X: "<< x << endl;
}
int main () {
float y=1.5;
cout << y << endl;
func1(y);
cout << y << endl;
return 0;
}
 cout << " "<< v[i] <<" "<
BDQ Prova file:///C:/Users/Administrador/Desktop/Nova pasta/AV2 ESTRUTUR...
2 de 4 26/11/2012 15:30
1.5 1.5 3.5 1.5 0
1.5 1.5 0
1.5 1.5 0
1.5 1.5
 1.5 1.5 3.5 1.5
 7a Questão (Cód.: 28112) Pontos: 0,5 / 0,5
Sistemas operacionais utilizam filas para gerenciar, tarefas, processos e recursos. Qual é a ordenação dos
elementos armazenados aleatoriamente em uma lista do tipo LIFO?
Posições aleatórias
Ordem decrescente
Primeiro que entra é o primeiro a sair
 Ordem de entrada
Ordem crescente
 8a Questão (Cód.: 28365) Pontos: 0,5 / 0,5
Observe o trecho de código em C/C++ a seguir. O laço for preenche os dados dos candidatos no vetor de
selecionados. (adaptado para C/C++)
1.struct Candidato {
2. char nome[15];
3. double nota;
4. };
5.
6.int main(){
7. struct Candidato selecionados[5];
8. int i;
9. for (i=0; i<5; i++){
10. cout << "Nome: ";
11. cin.get();cin.get(***********,15);
12. cout << "Nota: ";
13. cin >> ***********;
14. }
15. ...
16.}
Observe que o código no interior dos comandos das linhas 11 e 13 foi substituido por ***********.
Para que este programa compile e execute sem erros, os asteriscos nas linhas 11 e 13 devem ser substituídos
respectivamente por:
Candidato[i].nome
Candidato[i].nota
Candidato.nome[i]
Candidato.nota[i]
nome[i]
nota[i]
 selecionados[i].nome
selecionados[i].nota
selecionados.nome[i]
selecionados.nota[i]
BDQ Prova file:///C:/Users/Administrador/Desktop/Nova pasta/AV2 ESTRUTUR...
3 de 4 26/11/2012 15:30
 9a Questão (Cód.: 28102) Pontos: 0,0 / 0,5
Analisando a seqüência do código abaixo, pode se afirmar que se trata da:
 for (int i = topo-1; i>=0 ; i--)
 cout << " "<< v[i] <<" "<
 
 
Exibição de todos os elementos armazenados em uma Fila na ordem de entrada.
Exibição de todos os elementos armazenados em uma Pilha na ordem de entrada.
Exibição de todos os elementos armazenados em uma Fila na ordem decrescente.
 Exibição de todos os elementos armazenados em uma Pilha na ordem inversa da entrada.
 Exibição de todos os elementos armazenados em uma Fila na ordem inversa da entrada.
 10a Questão (Cód.: 28131) Pontos: 0,0 / 0,5
O espaço necessário para a representação dos dados pode ser alocado à medida que se torne necessário, através
da alocação dinâmica. Uma estrutura armazenada através de encadeamento apresenta seus nodos alocados em
posições aleatórias na memória, e não lado a lado. Dessa forma, existem várias vantagens no uso de representar
os dados por encadeamento. Marque a alternativa correta que apresenta estas vantagens.
Previsão de espaço físico, estruturas complexas, procedimentos menos intuitivos.
Transferência de dados, gerenciamento de memória e procedimentos menos intuitivos.
 Compartilhamento de memória, maleabilidade e facilidade para inserção e remoção de componentes.
 Acesso, representação, compartilhamento de memória.
Proteção de memória, transferência de dados, estruturas simples.
 
 
BDQ Prova file:///C:/Users/Administrador/Desktop/Nova pasta/AV2 ESTRUTUR...
4 de 4 26/11/2012 15:30

Outros materiais