You are on page 1of 3

Avaliao On-Line Avaliao: Disciplina: Tipo de Avaliao: Aluno: Nota da Prova: AV1-2011.

1EAD - ESTRUTURA DE DADOS - CCT0174 CCT0174 - ESTRUTURA DE DADOS AV1 Nota do Trabalho: Prova On-Line Questo: AV12011CCT0174106 (129441) 1 - No desenvolvimento de sistemas devemos utilizar a modularizao como forma de melhorar nossos sistemas, inserindo agilidade, facilidade de manuteno e etc. Quando em um programa um determinado pedao do cdigo ocorre vrias vezes vezes fazendo as seguintes atividades: - Lendo alguns valores informados pelo usurio; - fazendo alguns clculos; - e armazenando o resultado. A melhor soluo proposta seria:
Pontos da Questo: 1

Nota da Participao:

Total:

Criar uma funo que receba os dados lidos como parmetro execute os clculos e retorne o resultado. Criar uma funo fazer os clculos e exibir o resultado. Criar uma funo apenas para leitura dos dados; Escrever o cdigo apenas uma vez e apagar onde ele est sendo repetido. Escrever o cdigo tantas vezes quanto necessrio. Questo: AV12011CCT0174102 (129183) 2 - Baseado na declarao do seguinte registro: struct teste{ char coisa[50]; int numero; }; Qual das opes cria respectivamente uma varivel e um vetor de 30 posies para o registro declarado de forma correta:
Pontos da Questo: 1

Teste variavel, vetor[30]; int teste numero, coisa[50]; struct teste variavel, vetor[30]; struct testes vetor[30], variavel; variavel, vetor[30]: teste; Questo: AV120111CCT01740018 (127098) 3 - O programa a seguir uma implementao do mtodo de ordenao por seleo. Entretanto, foi cometido um erro na chamada da funo selecao(vet,5). Note que o argumento da funo que foi passado no lugar do parmetro tam est igual a 5. Para que a ordenao do vetor ocorresse de forma correta o argumento da funo deveria ser igual a 10. Analise o cdigo e marque a opo que contm a sada apresentada pelo programa. #include<iostream> using namespace std; void selecao(int vet[], int tam); void main() { int tamanhoDoVetor=10; int vet[]={10,2,5,1,3,8,4,7,9,6}; selecao(vet,5); cout<<"vet[]={"; for(int i=0;i<tamanhoDoVetor;i++) cout<<vet[i]; cout<<"}"; } void selecao(int vet[], int tam) { int j,i, aux,a, temp; for (i=0; i<tam -1; i++) { aux = i; for(j=i+1; j<tam; j++) if(vet[aux] > vet[j] ) aux=j; temp=vet[aux]; vet[aux]= vet[i]; vet[i]=temp; } }
Pontos da Questo: 1

vet[ ]={1 2 3 5 4 8 10 7 9 6 } vet[ ]={1 2 3 5 7 8 4 10 9 6 } vet[ ]={1 2 3 5 8 4 7 9 6 10} vet[ ]={1 2 3 5 9 8 4 7 10 6 } vet[ ]={1 2 3 5 10 8 4 7 9 6 }

Questo: AV120111CCT0174093 (127841) 4 - Considerando um vetor de elementos do tipo struct professor { char nome[40]; char titulacao[30]; }; Assinale a opo correta que mostra o trecho que determina que Maricota Silva Mestre em Computao.
Pontos da Questo: 1

struct professor p; strcpy("Maricota Silva",p.nome); strcpy("Mestre em Computao.",p.titulacao); professor p; p.nome = "Maricota Silva"; p.titulacao = "Mestre em Computao."; struct professor p; p.nome = "Maricota Silva"; p.titulacao = "Mestre em Computao."; professor p; strcpy(p.nome, "Maricota Silva"); strcpy(p.titulacao, "Mestre em Computao."); professor p; strcmp(p.nome, "Maricota Silva"); strcmp(p.titulacao, "Mestre em Computao."); Questo: AV120111CCT0174084 (127832) 5 - Considere o trecho com a chamada da funo muda feita na main : int x = 1000; muda(x); e a definio da funo :

void muda(int &valor) { valor++; } Assinale a opo correta:


Pontos da Questo: 1

A chamada possui erro. A chamada correta : muda(&x); A funo no funcionar, pois o parmetro da funo deveria ser x e no valor. ocorre erro, pois no foi declarada a varivel valor na main. ocorrer mudana na varivel x, que passar a valer 1001, aps a execuo da funo muda. no ocorrer mudana no contedo da varivel x, que permanecer com 1000. Questo: AV120111CCT0174100 (128268) 6 - Considere a funo que deve implementar a busca binria. Note que ela est incompleta e que voc deve complet-la. int buscaBinaria(int v[ ], int valor, int n) // n o nmero de elementos existentes em v { int inicio = 0, fim = n 1, meio; while (inicio <= fim) { meio = ____________ if (valor == __________ return __________ if (valor < ____________) _______________ else ________________ } return -1; } Assinale a opo que mostra a funo completa e correta.
Pontos da Questo: 1

int buscaBinaria(int v[ ], int valor, int n) // n o nmero de elementos existentes em v { int inicio = 0, fim = n - 1, meio; while (inicio <= fim) { meio = (inicio+fim) % 2; if (valor == v[meio]) return meio; if (valor < v[meio]) fim = meio -1; else inicio = meio + 1; } return -1; } int buscaBinaria(int v[ ], int valor, int n) // n o nmero de elementos existentes em v { int inicio = 0, fim = n - 1; while (inicio <= fim) { if (valor < v[inicio]) fim = inicio -1; else inicio = fim + 1; } return -1; } int buscaBinaria(int v[ ], int valor, int n) // n o nmero de elementos existentes em v { int inicio = 0, fim = n - 1, meio; while (inicio <= fim) { meio = (inicio+fim); if (valor == v[meio]) return meio; if (valor != v[meio]) fim = meio -1; else inicio = meio + 1; } return -1; } int buscaBinaria(int v[ ], int valor, int n) //n o nmero de elementos existentes em v { int inicio = 0, fim = n - 1, meio; while (inicio <= fim) { meio = (inicio+fim); if (valor <= v[meio]) return meio; else inicio = meio + 1; } return -1; }

int buscaBinaria(int v[ ], int valor, int n) // n o nmero de elementos existentes em v { int inicio = 0, fim = n - 1, meio; while (inicio <= fim) { meio = (inicio+fim)/2; if (valor == v[meio]) return meio; if (valor < v[meio]) fim = meio -1; else inicio = meio + 1; } return -1; }

Questo: AV120111CCT01740017 (127096) 7 - Dentre os algoritmos de pesquisa ou busca em vetores, os mais difundidos so: a busca sequencial e a busca binria. Leia as sentenas abaixo e marque a assinale a resposta correta: I. Para um vetor que armazena de forma ordenada uma quantidade bastante considervel de dados, se considerarmos que o dado a ser procurado no encontra-se no vetor, o algoritmo da busca sequencial ser mais rpido em

chegar a esta concluso, que o algoritmo da busca binria. II. O algoritmo da busca binria baseia-se no princpio da diviso e conquista, isto , o espao de busca dividido em espaos menores de modo a simplificar a tarefa a ser realizada. III. Para um vetor que armazena de forma ordenada uma quantidade bastante considervel de dados, se considerarmos que o dado a ser procurado encontra-se entre as primeiras posies do vetor, o algoritmo da busca sequencial ser mais rpido em encontrar o dado que o algoritmo da busca binria. IV. Quando realizada uma busca em um vetor, normalmente no se tem ideia em que posio o dado a ser buscado se encontra no vetor, ou mesmo se o dado buscado no est no vetor. E sendo assim, no caso de vetores ordenados o algoritmo de busca binria muito mais eficiente que o algoritmo de busca sequencial, na maioria dos casos.
Pontos da Questo: 1

Apenas a III est errada. I e IV esto corretas. I, II e III esto corretas. III e IV esto erradas. Apenas a I est errada.

Questo: AV120111CCT0174086 (127834) 8 - Assinale a opo correta. Considere o seguinte trecho na main : int v[ ] ={10,20,30,40}; Eureka(v); sendo a funo void Eureka(int v[ ]) { for (int i = 0; i < 4; i++) v[i] = 2 * i; } Aps a execuo da funo Eureka, v armazenar os seguintes valores :
Pontos da Questo: 1

0 20 1 0 0

20 40 2 2 2 4 4 4

40 60 6 6 6

60 80

Questo: AV120111CCT0174006 (127056) 9 - Sabe-se que um prottipo de uma funo o cabealho da funo com ;(ponto-e-vrgula) ao final. E que nas funes a passagem de parmetros se d por valor ou por referncia. Para o prottipo: void troca(float&,float&); pode-se dizer que:
Pontos da Questo: 1

um prottipo de funo que recebe dois argumentos que so endereos que armazenam nmeros reais, por passagem por referncia. E a funo no retorna nada para a funo chamadora. um prottipo de funo que recebe dois argumentos por passagem de valor. Os dois do tipo real e retorna, para a funo chamadora, um valor inteiro. um prottipo de funo que recebe dois argumentos reais por passagem de valor e no retorna nada para funo chamadora. um prottipo de funo que recebe dois argumentos por passagem de valor. Um do tipo char e outro do tipo int, mas no retorna nada para funo chamadora. um prottipo de funo que recebe dois argumentos reais e retorna, para a funo chamadora, um valor real. Questo: AV120111CCT01740013 (127087) 10 - A definio de uma estrutura no cria nenhuma varivel, para criar uma varivel do tipo estrutura, deve-se incluir uma instruo de declarao de varivel. E como outras variveis na linguagem C++, as variveis do tipo estrutura podem ser inicializadas logo aps a sua criao. Marque a alternativa CORRETA para inicializao de uma varivel do tipo Aluno, cuja a estrutura apresentada a seguir: struct Aluno { int mat; float nota[3]; char nome[50]; };
Pontos da Questo: 1

Aluno Jose={"Jose Gomes dos Santos",5.0,5.8,5.7,201001}; Aluno Jose={201001,5.0,5.8,5.7,"Jose Gomes dos Santos"}; Aluno Jose={5.0;5.8;5.7;"Jose Gomes dos Santos",201001}; Aluno Jose={201001;5.0;5.8;5.7;"Jose Gomes dos Santos"}; Aluno Jose={5.0,5.8,5.7,"Jose Gomes dos Santos",201001};

You might also like