Buscar

Estrutura de Dados - Testes de Conhecimento

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 71 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

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 6, do total de 71 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

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 9, do total de 71 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

1
          Questão
	
	
	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 modo particular de armazenamento e organização de dados em um computador de modo que possam ser usados eficientemente.
	
	É um conjunto de técnicas de programação.
	
	É uma forma determinada de armazenamento de dados em um banco de dados.
	Respondido em 06/05/2021 10:04:36
		2
          Questão
	
	
	As estruturas de dados podem ser caracterizadas como sendo uma forma organizada de armazenar dados ou informações na memória, de modo a otimizar o acesso a estes. Muitas vezes existem algoritmos de manipulação dados associados a estas estruturas. Verifique as seguintes sentenças:
I-Filas são estruturas que recuperam os dados na ordem direta em que estes foram  armazenados.
II-As Pilhas são estruturas que recuperam os dados na ordem reversa em que estes foram  armazenados.
III-As Pilhas são estruturas que recuperam os dados na ordem direta em que estes foram  armazenados.
IV-As Filas são estruturas que recuperam os dados na ordem reversa em que estes foram  armazenados.
Marque a alternativa CORRETA:
		
	
	Todas as alternativas estão corretas.
	
	As alternativas III e IV estão corretas.
	
	As alternativas II e IV estão corretas.
	
	As alternativas I e III estão corretas.
	 
	As alternativas I e II estão corretas
	Respondido em 06/05/2021 10:04:43
		3
          Questão
	
	
	Diferentes tipos de estrutura de dados são adequadas a diferentes tipos de aplicação e algumas são altamente especializadas, destinando-se a algumas tarefas específicas. Dessa forma a definição de Estrutura de Dados está expressa na alternativa:
		
	
	É um modo de utilização de dados nos programas de computador.
	
	São os nomes dados as variáveis na montagem de uma rotina.
	
	É um modo de deleção de dados em um computador.
	 
	É um modo particular de armazenamento e organização de dados em um computador de modo que possam ser usados de modo eficiente.
	
	É um modo de distribuição e organização de dados em uma rede de computador de modo que possam ser usados de modo eficiente.
	Respondido em 06/05/2021 10:04:51
		4
          Questão
	
	
	As estruturas de dados são utilizadas para manter dados ou informações organizados na memória, o que possibilita a otimização do uso destes dados. Porém, as estruturas guardam características especiais na manipulação destes dados, assim deve-se escolher a estrutura certa ou mais adequada para uma determinada aplicação. Portanto marque a opção que representa a melhor estrutura, quando se tem como requisitos principais o acesso aleatório aos dados e alocação destes de forma contínua na memória.
		
	
	Fila Sequencial
	
	Pilha Encadeada
	 
	Lista Sequencial
	
	Pilha Sequencial
	
	Lista Encadeada
	Respondido em 06/05/2021 10:04:56
		5
          Questão
	
	
	Para organizar as fotos de minha família com os ancestrais de várias gerações, minha filha usou uma estrutura de dados que é .....  Assinale a opção certa.
		
	 
	árvore
	
	fila
	
	pilha
	
	grafo
	
	lista
	Respondido em 06/05/2021 10:05:01
		6
          Questão
	
	
	           Preciso cadastrar todos os interessados em meu novo curso de programação. Qual a estrutura de dados mais adequada para modelar este problema, visto que não há qualquer preocupação com ordem de chegada ou saída de aluno da turma.
		
	
	Grafo
	
	Árvore
	 
	Lista
	
	          Pilha
	
	         Fila
	Respondido em 06/05/2021 10:05:07
		7
          Questão
	
	
	Observe o trecho do programa em C++ abaixo e, após, entrar com os valores sugeridos para sua execução assinale a alternativa que representa a resposta final.
cin >> a;
cin >> b;
cin >> c;
cin >> d;
cout << a;
cout << b;
cout << c;
cout << d;
cout << d;
cout << c;
cout << b;
cout << a;
		
	
	Após a impressão dos valores pela ordem teremos duas filas.
	
	Após a impressão dos valores pela ordem teremos uma pilha e uma fila.
	 
	Após a impressão dos valores pela ordem teremos uma fila e uma pilha.
	
	Após a impressão dos valores pela ordem teremos uma fila e um grafo.
	
	Após a impressão dos valores pela ordem teremos duas pilhas.
	Respondido em 06/05/2021 10:05:11
		8
          Questão
	
	
	Estão entre algumas das possíveis formas de estruturas de dados:
		
	
	cout, Funções, vetores
	
	Listas, vetores, cin
	 
	Árvores binárias, pilhas, vetores
	
	Grafos, funções, fila
	 
	Árvores binárias, pilhas, algoritmos
		1
          Questão
	
	
	Estão entre algumas das possíveis formas de se estruturar dados:
		
	
	Lista encadeada, vetores, algoritmos.
	
	Algoritmos, lista ordenada, vetores.
	
	Grafos, algoritmos, fila.
	 
	Grafos, lista ordenada, vetores.
	
	Grafos, lista ordenada, algoritmos.
	Respondido em 06/05/2021 10:05:57
		2
          Questão
	
	
	Podemos dizer que estrutura de dados é:
		
	
	É a saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma solução do problema.
	 
	O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações.
	
	Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente determinada.
	
	A entrada, 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.
	 Respondido em 06/05/2021 10:05:59
	
		3
          Questão
	
	
	Das estruturas de dados a seguir aquela que NÃO é uma estrutura linear é :
		
	 
	Grafo.
	
	Pilha.
	
	Lista.
	
	Vetor.
	
	Fila.
	Respondido em 06/05/2021 10:06:04
		4
          Questão
	
	
	As estruturas de dados podem ser caracterizadas como sendo uma forma organizada de armazenar dados ou informações na memória, de modo a otimizar o acesso a estes. Muitas vezes existem algoritmos de manipulação de dados associados a estas estruturas.
Verifique as seguintes sentenças:
I-Filas são estruturas que recuperam os dados na ordem direta em que estes foram armazenados.
II-As Pilhas são estruturas que recuperam os dados na ordem reversa em que estes foram armazenados.
III-As Pilhas são estruturas que recuperam os dados na ordem direta em que estes foram armazenados.
IV-As Filas são estruturas que recuperam os dados na ordem reversa em que estes foram armazenados.
Marque a alternativa CORRETA:
		
	
	Todas as alternativas estão corretas.
	
	As alternativas I e III estão corretas.
	
	As alternativas III e IV estão corretas.
	 
	As alternativas I e II estão corretas
	
	As alternativas II e IV estão corretas.
	Respondido em 06/05/2021 10:06:08
	
	
	 
		5
          Questão
	
	
	A forma correta para imprimir o valor do último elemento de um vetor v com n posições é:
		
	 
	cout << v[n-1];
	
	cout << v[n+1];
	
	cout << v[n];
	
	cout << v[ultimo];
	 
	cin >> v[-1];
	Respondido em 06/05/2021 10:06:17
	
	
	 
		6
          Questão
	
	
	Assinale a alternativa correta sobre tipos abstratos de dados:
		
	 
	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.
	
	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 abstratosde dados proponham um conjunto eficiente de algoritmos para realização de suas operações.
	Respondido em 06/05/2021 10:06:20
		7
          Questão
	
	
	Qual estrutura de dados é mais adequada para armazenar a estrutura do diretório do sistema de arquivos de um sistema operacional?
		
	 
	Árvore
	
	Pilha
	
	Grafo
	
	Lista
	
	Fila
	Respondido em 06/05/2021 10:06:23
		8
          Questão
	
	
	É um exemplo de TAD Não Linear:
		
	 
	Grafos
	
	Filas de Prioridade
	
	Filas
	
	Listas
	
	Pilhas
AULA 2 - FUNÇÕES
		1
          Questão
	
	
	O que será mostrado na tela pelo programa abaixo ? 
#include < iostream >
using namespace std;
int a,b;
void dobro(int x){ //x passado por valor
 x=2*x;
}
int triplo(int y){ //y passado por valor
 return 3*y;
}
void altera(int x, int &y) { //x passado por valor e y passado por referencia
 x=x+a;
 y=x+b;
} 
 
int main (){
 a=2;
 b=3;
 dobro(a);
 b=triplo(b);
 altera(a,b);
 cout<< a << " e " << b << endl;
}
 
		
	
	2 e 9
	 
	2 e 13
	
	4 e 9
	
	4 e 12
	
	9 e 16
	Respondido em 06/05/2021 10:06:56
		2
          Questão
	
	
	Considere o trecho de um programa escrito em C++.
void func1 (bool x, int ini, int fim) {
    for ( int y=ini; y != fim ; y++) {
        x = !x;
        if (x)
            cout << y << endl;
        else
            cout << -y << endl;
    }
}
int main() {
    func1(false, 1, 7);
}
Marque a opção correta que mostra o que é impresso na tela.
		
	 
	1, -2, 3, -4, 5, -6
	
	1, -2, -3, -4, -5, -6
	
	-1, -2, -3, -4, -5, -6
	
	1, 2, 3, 4, 5, 6
	
	-1, 2, -3, 4, -5, 6
	Respondido em 06/05/2021 10:06:59
		3
          Questão
	
	
	Considere o trecho de um programa escrito em C++.
int func1 (int vtx[], int tam) {
    int soma=0;
    for (int i=0 ; i < tam; i++) {
        if (i % 2 !=0)
             soma += vtx[i];     
    }
    return soma;
}
int main() {
    int vt[5] = {10,20,30,40,50};
    cout << func1 (vt,5);
}
Marque a opção correta que mostra o que é impresso na tela.
		
	
	20
	
	40
	 
	60
	
	30
	
	50
	Respondido em 06/05/2021 10:07:05
		4
          Questão
	
	
	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 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.
	 
	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.
	
	Em duas funções diferentes temos duas variáveis também diferentes com o mesmo nome apresentando o mesmo valor.
	
	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".
	
	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.
	Respondido em 06/05/2021 10:07:10
		5
          Questão
	
	No programa abaixo em C++, que sequência de valores serão impressos ? int x; x = 15; if (x > 0) { int x; x = 25; cout << x << endl; } cout << x << endl;
		
	
	25 e 25
	
	15 e 15
	
	15 e 25
	
	0 e 5
	 
	25 e 15
	Respondido em 06/05/2021 10:07:13
		6
          Questão
	
	Considere o trecho de um programa escrito em C++ : 
int func1 (long num) {
    int n, na=1;
    while (num / 10 != 0){
          na += 1;
          num /= 10;
    }
    return na;
}
main() {
     cout << func1 (132041);
}
Marque a opção correta que mostra o que é impresso na tela.
		
	
	1
	
	4
	
	2
	 
	6
	
	3
	Respondido em 06/05/2021 10:07:18
		7
          Questão
	
	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:
		
	
	Envio de inteiro.
	
	Envio de valor.
	
	Passagem por valor.
	 
	Ponteiros.
	
	Registro.
	Respondido em 06/05/2021 10:07:24
		8
	Questão
	Considere o trecho de um programa escrito em C++.
 int func1 (int n1, int n2) {
     int aux = n1 % n2;
     while ( aux != 0) {
         n1 = n2;
         n2 = aux;
         aux = n1 % n2;
     }
     return n2;
}
int main() {
    cout << func1 (27, 18);
}
Marque a opção correta que mostra o que é impresso na tela.
		
	
	27
	
	3
	 
	9
	
	18
	
	6
		1
          Questão
	
	
	Considere o trecho de um programa escrito em C++ : 
int func1 (int n1, int n2) {
    int soma=0;
    for (    ; n1 < n2 ; n1 +=  2) {
         soma +=  n1;
     }
    return soma;
}
main() {
    cout << func1(1.20);
}
Marque a opção correta que mostra o que é impresso na tela.
		
	
	104
	
	102
	
	90
	
	80
	 
	100
	Respondido em 06/05/2021 10:07:42
		2
          Questão
	
	
	#include  < iostream  >
 using namespace std;
void SOMA(float a, int b)  {
  float result  =  a+b;
  cout << "A soma de " << a << " com " << b << " é: " << result;
}
int main()
{
int a;
float b;
a = 10; b = 12.3;
SOMA(b,a);
}
A função SOMA acima possui as seguintes características :
		
	
	Retorna valor e possui parâmetros.
	
	Retorna valor.
	
	Retorna valor e não  possui parâmetros.
	 
	Não retorna valor e possui parâmetros.
	
	Não retorna valor e não   possui parâmetros.
	Respondido em 06/05/2021 10:07:48
		3
          Questão
	
	
	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: 13 13
	
	Valores: 31 01
	
	Valores: 13 10
	
	Valores: 10 10
	
	Valores: 10 13
	Respondido em 06/05/2021 10:07:50
		4
          Questão
	
	
	  Assinale a opção CORRETA.  O protótipo da função que permitirá calcular o volume de um paralelepípedo com medidas a, b e c  de acordo com o trecho da  chamada  :     cout << "Volume  =   "  <<  volume(a,b,c);
		
	 
	float  volume (float, float, float);
	
	void volume (float, float, float &);
	
	float volume (float, float);
	
	float volume (float ; float ; float);
	
	void volume (float , float);
	Respondido em 06/05/2021 10:07:55
		5
          Questão
	
	
	1)      O que será impresso pela função Eureka ?  Assinale a opção correta.
 
void Eureka()
  {
              for (int i = 1; i <= 10; i++)
                              if (i % 2 == 0)
                                  cout << i << " ";
                              else
                                 if (i % 7 == 0)
                                     return;
  }
 
		
	 
	2 4 6
	
	2 4 6 8
	
	2 4 6 8 10
	
	Nada é impresso, pois a função não compila. A função não deveria usar return, pois não está de acordo  com o uso de void.
	
	Nada é impresso, pois a função não compila. Para a função compilar, deveria ter int no lugar de void, já  que há return na função.
	Respondido em 06/05/2021 10:08:00
	
	 
		6
          Questão
	
	
	Qual será a saída para o seguinte trecho de código?
 void FUNC1()
{
int B = -100; 
cout << "Valor de B dentro da função FUNC1: " << B;
}
void FUNC2() {
int B =  -200;
cout << "Valorde B dentro da função FUNC2: " << B;
}
int  main() {
int B = 10;
cout << "Valor de B: " << B;
B = 20;
FUNC1();
cout << "Valor de B: " << B;
B = 30;
FUNC2();
cout << "Valor de B: " << B;
}
		
	
	Valor de B: 10 Valor de B dentro da função FUNC1: -100 Valor de B: 20 Valor de B dentro da função FUNC2: -400 Valor de B: 30
	
	Valor de B: 10 Valor de B dentro da função FUNC1: -200 Valor de B: 20 Valor de B dentro da função FUNC2: -200 Valor de B: 30
	 
	Valor de B: 10 Valor de B dentro da função FUNC1: -100 Valor de B: 20 Valor de B dentro da função FUNC2: -200 Valor de B: 30
	
	Valor de B: 10 Valor de B dentro da função FUNC1: -100 Valor de B: 20 Valor de B dentro da função FUNC2: -200 Valor de B: 20
	
	Valor de B: 10 Valor de B dentro da função FUNC1: -100 Valor de B: 10 Valor de B dentro da função FUNC2: -200 Valor de B: 30
	Respondido em 06/05/2021 10:08:05
	 
		7
          Questão
	
	
	Considere a função a seguir e a chamada da mesma efetuada no programa principal abaixo. Indique a opção que contem o que será impresso.
int executar (int x, int &y) {
    x = y * 2;
    y = ++x;
    return x + y;
}
int main () {
int a=2, b=2, c=2;
c = executar (a, b);
cout << a << ", " << b << ", " << c;
}
		
	
	4, 5, 9
	
	3, 2, 8
	
	2, 2, 9
	
	3, 5, 8
	 
	2, 5, 10
	Respondido em 06/05/2021 10:08:11
	 
		8
          Questão
	
	
	Blocos únicos de códigos que realizam diversas tarefas distitintas são de dificil manutenção. Portanto, utiliza-se a tecnica da modularização de programas, a fim de facilitar a implementação e a manutenção dos programas. Esta técnica, também chamada de modularização, tem como principal elemento:
		
	
	As Filas
	 
	As funções
	
	Os Vetores
	
	As Estruturas de Dados
	 
	Os Grafos
AULA 3 – ESTRUTURAS HETEROGÊNEAS
		1
          Questão
	
	
	Em C++, quando uma variável é declarada como uma struct, o acesso para atribuição e leitura dos membros (campos) deste registro se dá pelo operador :
		
	
	-> (seta).
	
	* (asterisco).
	
	& (e comercial ou eitza).
	 
	∙ (ponto).
	
	, (vírgula).
	Respondido em 06/05/2021 10:08:45
	
	
	
	 
		2
          Questão
	
	
	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.
		
	
	aluno.vet[10].nota=5.7;
	
	vet[10]=aluno.5.7;
	 
	vet[10].nota=5.7;
	
	aluno.vet[10]=5.7;
	
	vet[10].aluno.nota=5.7 ;
	Respondido em 06/05/2021 10:08:49
	
	
	 
		3
          Questão
	
	
	Qual das seguintes estruturas de dados é classificada como heterogênea?
		
	 
	Registro
	
	Fila
	
	Loop
	
	Pilha
	
	Vetor
	Respondido em 06/05/2021 10:08:56
	 
		4
          Questão
	
	
	Marque a opção correta, considerando
struct Livro {
int codigo;
float preco;
} liv;
		
	
	liv->preco = 30.70;
	
	Livro->liv.codigo = 12345;
	
	Livro.codigo = 12345;
	
	Livro.liv.codigo = 12345;
	 
	liv.preco = 30.70;
	Respondido em 06/05/2021 10:09:01
	
	
	 
		5
          Questão
	
	
	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 media; }; Suponha ainda que exista um vetor desta estrutura, definido como: aluno vet [ 10]; Marque a alternativa em que é atribuída de forma correta a media 6.0 para o quarto elemento deste vetor.
		
	
	vet[3].aluno=6.0;
	
	aluno[3].10=6.0;
	
	aluno[10]=6.0;
	 
	vet[3].media=6.0;
	
	aluno[3].media=6.0;
	Respondido em 06/05/2021 10:09:04
	
	
	 
		6
          Questão
	
	
	Marque a afirmativa correta para a "Inserção em lista linear sequencial ordenada".
		
	
	Consiste em adicionar um valor no vetor, alterando a ordem existente e ajustando o total de elementos.
	 
	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.
	
	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.
	
	É o processo pelo qual um conjunto de dados é colocado em uma ordem crescente ou decrescente.
	Respondido em 06/05/2021 10:09:09
	
	
	
	 
		7
          Questão
	
	
	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.
		
	
	aluno.vet[10].nota=5.7;
	 
	vet[10].nota=5.7;
	
	vet[10]=aluno.5.7;
	
	vet[10].aluno.nota=5.7 ;
	
	aluno.vet[10]=5.7;
	Respondido em 06/05/2021 10:09:14
	
	
	 
		8
          Questão
	
	
	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.
		
	
	int ordena(float v[], float valor, int n){
   for (int i = 0; i < n; i++)
     if (v[i] == valor)
       return i;
   return -1;
}
	
	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;
}
	 
	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;
        }
    }
}
}
	
	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, 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; 
            }
}
		1
          Questão
	
	
	Em C++, quando uma variável é declarada como uma struct, o acesso para atribuição e leitura dos membros (campos) deste registro se dá pelo operador :
		
	
	, (vírgula).
	
	& (e comercial ou eitza).
	
	* (asterisco).
	 
	∙ (ponto).
	
	-> (seta).
	Respondido em 06/05/2021 10:10:19
	
		2
          Questão
	
	
	Marque a opção correta, considerando
struct Livro {
int codigo;
float preco;
} liv;
		
	
	Livro.codigo = 12345;
	
	Livro->liv.codigo = 12345;
	 
	liv.preco = 30.70;
	
	liv->preco = 30.70;
	
	Livro.liv.codigo = 12345;
	Respondido em 06/05/2021 10:10:23
	
	
		3
          Questão
	
	
	Qual das seguintes estruturas de dados é classificada como heterogênea?
		
	
	Loop
	 
	Registro
	
	Vetor
	
	Fila
	
	Pilha
	Respondido em 06/05/2021 10:10:28
		4
          QuestãoPode-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].aluno.nota=5.7 ;
	
	vet[10]=aluno.5.7;
	
	aluno.vet[10]=5.7;
	 
	vet[10].nota=5.7;
	
	aluno.vet[10].nota=5.7;
	Respondido em 06/05/2021 10:10:40
		5
          Questão
	
	
	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]=aluno.5.7;
	
	aluno.vet[10]=5.7;
	
	aluno.vet[10].nota=5.7;
	 
	vet[10].nota=5.7;
	
	vet[10].aluno.nota=5.7 ;
	Respondido em 06/05/2021 10:10:49
		6
          Questão
	
	
	Marque a afirmativa correta para a "Inserção em lista linear sequencial ordenada".
		
	
	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, mantendo 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.
	
	Consiste em adicionar um valor no vetor, alterando a ordem existente e ajustando o total de elementos.
	Respondido em 06/05/2021 10:10:54
	
		7
          Questão
	
	
	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 media; }; Suponha ainda que exista um vetor desta estrutura, definido como: aluno vet [ 10]; Marque a alternativa em que é atribuída de forma correta a media 6.0 para o quarto elemento deste vetor.
		
	
	aluno[3].10=6.0;
	
	vet[3].aluno=6.0;
	
	aluno[3].media=6.0;
	 
	vet[3].media=6.0;
	
	aluno[10]=6.0;
	Respondido em 06/05/2021 10:11:03
		8
          Questão
	
	
	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.
		
	 
	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){
   for (int i = 0; i < n; i++)
     if (v[i] == valor)
       return i;
   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;
        }
    }
}
}
	
	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; 
            }
}
AULA 4 – ORDENAÇÃO E PESQUISA
		1
          Questão
	
	
	O seguinte trecho de programa abaixo representa qual tipo de estrutura de ordenação?
void ordenar(float v[], int n) // n é o no. de elementos em v
{
 int i , // índice
 aux, // auxiliar para troca
trocou = true,
fim = n - 1;
while (trocou)
{
    trocou = false; // sinaliza que é falso que trocou
     for (i = 0; i < fim; i++)
     {
       if (v[i] > v[i+1])
       {
         aux = v[i];
         v[i] = v[i+1];
         v[i+1] = aux;
         // sinaliza que é verdadeiro que trocou
         trocou = true;
        } // fim if
    } // fim for
 fim--; // decrementa o fim
} // fim while
} // fim da função
		
	 
	Bublesort
	
	Mergesort
	
	Shellsort
	
	Quicksort
	
	Heapsort
	Respondido em 06/05/2021 10:11:23
	
		2
          Questão
	
	
	Considere a seguinte função busca escrita em linguagem C++ :
bool busca(int vetor[ ], int n, int tam)
{
    int ini=0, mid;
    while (ini <= tam)
    {
         cout << " x ";
         mid = (ini + tam)/2;
         if (vetor[mid] == n)
             return true;
         else if (n > vetor[mid])
             ini = mid+1;
         else
             tam = mid-1;
    }
    return false;
}
Qual a quantidade total de impressões da letra x nas buscas pelos números n = 4, n = 2 e n = 0 no vetor [1,2,3,4,5,6,7,8], sendo tam = 7 ?
int vetor[] = {1,2,3,4,5,6,7,8};
busca(vetor, 4, 7);
busca(vetor, 2, 7);
busca(vetor, 0, 7);
		
	 
	6
	
	5
	
	4
	
	9
	
	8
	Respondido em 06/05/2021 10:11:26
		3
          Questão
	
	
	Existem vários tipos de algoritmos para realizar a ordenação dos elementos, onde um algoritmo de ordenação deve rearranjar o vetor de forma a estabelecer uma ordem entre os elementos. Marque a alternativa correta que cita o algoritmo cuja descrição é: "considera cada elemento uma vez inserindo-o em seu lugar correto entre os elementos que já estão em ordem". E o seu passo a passo pode ser descrito como: "o elemento é inserido entre os ordenados movendo-se os elementos maiores que ele uma posição para a direita e posteriormente inserindo-o na posição vaga".
		
	 
	Inserção
	
	Bolha
	
	QuickSort
	
	MergeSort
	
	Seleção
	Respondido em 06/05/2021 10:11:30
	
		4
          Questão
	
	
	Em uma pesquisa sequencial a lista deve estar?
		
	
	ordenada somente o primeiro da lista.
	 
	ordenada ou desordenada.
	
	sempre desordenada.
	
	desordenada somente da metade da lista até o final.
	
	ordenada somente do início até a metade da lista.
	Respondido em 06/05/2021 10:11:33
		5
          Questão
	
	
	Marque a afirmativa correta para a "Busca ou pesquisa binária".
		
	
	Consiste em adicionar um valor no vetor, alterando a ordem existente e ajustando o total de elementos.
	
	É o processo pelo qual um conjunto de dados é colocado em uma ordem crescente ou decrescente.
	
	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 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.
	 
	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.
	Respondido em 06/05/2021 10:11:39
		6
          Questão
	
	
	Seja a seguinte função de ordenação:
void ordena( int n, int v[])
{
   int i, j, x;
   for (j = 1; j < n; ++j) {
      x = v[j];
      for (i = j-1; i >= 0 && v[i] > x; --i)
         v[i+1] = v[i];
      v[i+1] = x;
   }
}
Pode-sedizer que é uma função de ordenação:
		
	
	Que utiliza o método seleção e realiza uma ordenação crescente nos elementos do vetor v.
	
	Que utiliza o método inserção e realiza uma ordenação decrescente nos elementos do vetor v.
	 
	Que utiliza o método inserção e realiza uma ordenação crescente nos elementos do vetor v.
	
	Que utiliza o método seleção e realiza uma ordenação decrescente nos elementos do vetor v.
	
	Que utiliza o método bolha e realiza uma ordenação crescente nos elementos do vetor v.
	Respondido em 06/05/2021 10:11:44
	
	
	 
		7
          Questão
	
	
	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.
	
	linear.
	
	por comparação.
	
	randômica.
	
	por contagem.
	Respondido em 06/05/2021 10:11:47
		8
          Questão
	
	
	Sobre o funcionamento da busca binária, é correto afirmar que dividindo seu vetor em duas metades.
		
	
	Se o item for menor que o item que está na metade do vetor, procure na segunda metade, ou seja, a da direita.
	
	Se o item for igual ao item que está na metade do vetor, o item não foi encontrado.
	
	Se o item for maior que o item que está na metade do vetor procure na primeira metade, ou seja, a da direita.
	
	Se o item for menor que o item que está na metade do vetor, o item foi encontrado.
	 
	Se o item for igual ao item que está na metade do vetor, o item foi encontrado.
		1
          Questão
	
	
	É um método de pesquisa ou busca, cujo algoritmo parte do pressuposto de que o vetor está ordenado e realiza sucessivas divisões do espaço de busca, comparando o elemento buscado (chave) com o elemento no meio do vetor. Se o elemento do meio do vetor for a chave, a busca termina com sucesso. Caso contrário, se o elemento do meio vier antes do elemento buscado, então a busca continua na metade posterior do vetor. E finalmente, se o elemento do meio vier depois da chave, a busca continua na metade anterior do vetor.
A descrição apresentada trata-se do método denominado busca ...... 
		
	
	por contagem.
	
	randômica.
	 
	binária.
	
	linear.
	
	por comparação.
	Respondido em 06/05/2021 10:12:06
		2
          Questão
	
	
	Qual a importância de se entender a "ordenação" de dados ?
		
	
	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 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.
	
	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 resolver outros problemas.
	Respondido em 06/05/2021 10:12:08
		3
          Questão
	
	
	"Algoritmo de ordenação por trocas  que varre um vetor um certo número de vezes, comparando os elementos vizinhos dois a dois. A cada varredura, se o par de elementos está em ordem crescente, nada é feito, caso contrário os elementos do par são permutados". Esta definição está descrevendo o algoritmo de ordenação conhecido por :
		
	
	InsertionSort
	
	MergeSort
	
	QuickSort
	
	SelectionSort
	 
	BubbleSort
	Respondido em 06/05/2021 10:12:10
		4
          Questão
	
	
	Sabendo-se que o método de ordenção bolha ou bubble sort realiza a troca de elementos adjacentes até que todos os elementos de um vetor esteja ordenado. Então, se submetermos a sequencia de inteiros armazenada em um vetor inicialmente na seguinte ordem : 4, 2, 5, 1.
Pode-se dizer que quando o maior elemento do vetor alcançar sua posição final, a ordenação apresentada no vetor é:
		
	
	2,1,4,5
	 
	2,4,1,5
	
	4,1,2,5
	
	1,4,2,5
	
	1,2,4,5
	Respondido em 06/05/2021 10:12:13
	
		5
          Questão
	
	
	Os métodos de ordenação são muito utilizados para facilitar a recuperação posterior de itens ordenados. Existem vários métodos de ordenação, por esse motivo, assinale corretamente a alternativa que mostra o nome do método que utiliza a estratégia de ordenação por trocas de vizinhos e é considerado o método mais simples.
		
	
	Seleção
	
	Inserção
	 
	Bolha
	
	Hash
	
	Binária
	Respondido em 06/05/2021 10:12:18
		6
          Questão
	
	Os algoritmos de busca são muito utilizados em estrutura de dados. Sendo assim, o algoritmo que realiza a busca em vetores e que exige acesso aleatório aos elementos do mesmo e que parte do pressuposto de que o vetor está ordenado e realiza sucessivas divisões do espaço de busca comparando o elemento que se deseja com o elemento do meio do vetor, é chamado de:
		
	 
	Pesquisa binária
	
	Pesquisa ordenada
	
	Tabela Hash
	
	Pesquisa sequêncial
	
	Pesquisa de seleção
	Respondido em 06/05/2021 10:12:21
		7
          Questão
	
	Considere as afirmativas a seguir.
I. Uma forma muito simples de fazer uma busca em um vetor consiste em percorrer o vetor, elemento a elemento, para verificar se o elemento procurado é igual a um dos elementos do vetor.
II. A pesquisa sequencial é extremamente simples e eficiente quando o número de elementos do vetor for muito grande.
III. Na pesquisa binária, a cada interação do algoritmo o tamanho do vetor é dividido ao meio.
IV. A pesquisa binária funciona corretamente quanto o conjunto de dados estiver desordenado.
Assinale a alternativa correta.
		
	
	Somente as afirmativas I e IV são corretas.
	
	Somente as afirmativas II, III e IV são corretas.
	
	Somente as afirmativas I e II são corretas.
	 
	Somente as afirmativas I e III são corretas.
	
	Somente as afirmativas III e IV são corretas.
	Respondido em 06/05/2021 10:12:32
		8
          Questão
	
	Caso seja empregada uma busca binária em uma lista sequencial ordenada com 2048 valores, qual seria o número máximo de comparações para encontrar um valor que esteja na lista?
		
	
	10
	
	9
	
	8
	 
	11
	
	12
AULA 5 – A ESTRUTURA DE DADOS (LISTA)
		1
          Questão
	
	
	Estude atentamente o código a segir:
int deciframe(int v[ ], int tam, int e){
int i = 0, f = tam -1, m;
while ( i <= f ){
m = ( i + f ) / 2;
if ( v[m] == e ) { return m; }
if ( e < v[m] ) { f = m - 1; }
else { i = m + 1; }
}
return -1;
}
Sabendo que a chamada da mesma foi feita com os parâmetros recebendo os seguintes valores, o que ela retornaria?
v[10] = {0, 2, 4, 6, 8, 10, 20, 100}
tam = 8
e = -6
		
	
	0
	
	4
	
	3
	 
	-1
	
	6
	Respondido em 06/05/2021 10:12:51
		2
          Questão
	
	
	Considere uma lista com n  livros, em que cada livro é modelado pela struct :
 
struct Livro {
                            string titulo,  editora, autor;
                            float preco;
};
 
A função X abaixo
 
void X (Livro v[ ], int &n, Livro L)
{
     v[n] = L;
     n++;cout << "Operação realizada com sucesso.";
}
 
implementa a operação de :
		
	
	Busca
	
	Inicialização
	
	Ordenação por inserção
	 
	Inserção
	
	Substituição
	Respondido em 06/05/2021 10:12:56
	
		3
          Questão
	
	
	Quanto a Pesquisa ou Busca Binária julgue os itens em V (VERDADEIRO) ou F (FALSO):
		
	 
	Na operação de inserção de um valor do vetor passado como parâmetro, não é necessário primeiro verificar se a lista está cheia.
	 
	A Pesquisa Binária consiste em fazer uma busca em um vetor 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.
	 
	O protótipo abaixo é válido para uma função de busca binária: int buscaBinaria(float v[], float valor , int n);
	 
	Na operação de remoção de um valor do vetor passado como parâmetro, não é necessário primeiro verificar se a lista está vazia.
	 
	A Busca Binária é mais eficiente quando o vetor não está ordenado.
	Respondido em 06/05/2021 10:13:16
		4
          Questão
	
	
	As estruturas de dados em programação são muito utilizadas para tornar o acesso aos dados mais eficiente e organizado. A estrutura de dados considerada mais simples e tem como característica apresentar apenas uma dimensão é:
		
	
	Variável
	
	Matriz
	
	Função
	 
	Vetor
	
	Registro
	Respondido em 06/05/2021 10:13:22
	
		5
          Questão
	
	
	São métodos ou algoritmos conhecidos de ordenação de dados por troca:
		
	 
	bubble sort e quicksort.
	
	busca por ordenação e ordenação shell.
	
	quicksort e hashing.
	
	hashing e bubble sort.
	
	ordenação shell e hashing.
	Respondido em 06/05/2021 10:13:27
		6
          Questão
	
	
	
		
	 
	for (int i = 0; i < n; i++)
   cout << L[i].matricula << "  "  << L[i].nome << 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] << endl;
	
	for (int i = 0; i < n; i++)
   cout << L[i].matricula << "  "  << L[i].nome[30] << endl;
	Respondido em 06/05/2021 10:13:32
	
		7
          Questão
	
	
	Considere uma lista sequencial L com n fichas de professores, sendo que cada ficha de professor é modelada pela struct :
struct professor {
int matricula;
char titulo[30];
};
e a lista L é assim declarada : professor L[n];
Assinale o trecho que corretamente exibe todas as matrículas e titulações de todos os n professores de L .
		
	
	for (int i = 0; i < n; i++)
cout << L.matricula[i] << " " << L.titulo[i] << endl;
	 
	for (int i = 0; i < n; i++)
cout << L[i].matricula << " " << L[i].titulo << endl;
	
	for (int i = 0; i < n; i++)
cout << L[i].matricula << " " << L[i].titulo[30] << endl;
	
	for (int i = 0; i < n; i++)
cout << L.matricula << " " << L.titulo << endl;
	
	for (int i = 0; i < n; i++)
cout << L[i] << endl;
	Respondido em 06/05/2021 10:13:36
		8
          Questão
	
	
	As estruturas de dados são utilizadas para manter dados ou informações organizados na memória, o que possibilita a otimização do uso destes dados. Porém, as estruturas guardam características especiais na manipulação destes dados, assim deve-se escolher a estrutura certa ou mais adequada para uma determinada aplicação. Portanto marque a opção que representa a melhor estrutura, quando se tem como requisitos principais o acesso aleatório aos dados e alocação destes de forma contínua na memória.
		
	 
	Lista Sequencial
	 
	Lista Encadeada
	
	Pilha Sequencial
	
	Fila Sequencial
	
	Pilha Encadeada
		1
          Questão
	
	
	Considere as seguintes afirmações sobre Listas Sequenciais:
I  - São estruturas lineares que utilizam as primeiras posições de um vetor para armazenar os dados de interesse.
II - São compostas pelo conjunto dos dados que se deseja armazenar e por uma variável inteira que indica a quantidade de dados armazenados.
III - Os dados são sempre inseridos ou removidos no final da lista, tomando-se o cuidado de atualizar a quantidade de dados da mesma.
IV - A lista pode admitir ou não admitir que haja dados repetidos (listas podem ser com ou sem repetição).
Marque a opção que contém apenas todas  as afirmações verdadeiras:
		
	
	I, II, III
	
	I, III, IV
	 
	I, II, IV
	
	I, II
	
	I, II, III, IV
	Respondido em 06/05/2021 10:13:56
	 
		2
          Questão
	
	
	Considere as seguintes afirmações: I. Só podemos ter uma matriz de no máximo duas dimensões. Exemplo: C[100][100]. II. Ao declararmos um vetor int A[10], se escrevemos A[2] acessamos o segundo elemento do vetor. III. Uma string declarada como char B[30] armazena no máximo 30 caracteres. Escolha a alternativa correta:
		
	
	Estão corretas apenas as afirmativas I e III.
	
	Está correta apenas a afirmativa I.
	
	Está correta apenas a afirmativa II.
	
	Estão corretas apenas as afirmativas I e II.
	 
	Nenhuma afirmação está correta.
	Respondido em 06/05/2021 10:14:00
		3
          Questão
	
	
	__________________________ é 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 Sequencial
	
	Lista Linear Não Alocada
	
	Lista Não Linear
	
	Lista Linear de Alocação de Memória
	 
	Lista Linear Sequencial
	Respondido em 06/05/2021 10:14:04
	
	
	 
		4
          Questão
	
	
	Considere uma lista sequencial L com n fichas de professores, sendo que cada ficha de professor é modelada pela struct :
struct professor {
int matricula;
char titulo[30];
};
e a lista L é assim declarada : professor L[n];
Assinale o trecho que corretamente exibe todas as matrículas e titulações de todos os n professores de L .
		
	
	for (int i = 0; i < n; i++)
cout << L[i] << endl;
	 
	for (int i = 0; i < n; i++)
cout << L[i].matricula << " " << L[i].titulo << endl;
	
	for (int i = 0; i < n; i++)
cout << L[i].matricula << " " << L[i].titulo[30] << endl;
	
	for (int i = 0; i < n; i++)
cout << L.matricula[i] << " " << L.titulo[i] << endl;
	
	for (int i = 0; i < n; i++)
cout << L.matricula << " " << L.titulo << endl;
	Respondido em 06/05/2021 10:14:08
		5
          Questão
	
	
	
		
	
	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;
	
	for (int i = 0; i < n; i++)
   cout << L[i] << endl;
	 
	for (int i = 0; i < n; i++)
   cout << L[i].matricula << "  "  << L[i].nome << endl;
	Respondido em 06/05/2021 10:14:12
	
		6
          Questão
	
	
	São métodos ou algoritmos conhecidos de ordenação de dados por troca:
		
	
	hashing e bubble sort.
	 
	bubble sort e quicksort.
	
	busca por ordenação e ordenação shell.
	
	ordenação shell e hashing.
	
	quicksort e hashing.
	Respondido em 06/05/2021 10:14:17
		7
          Questão
	
	
	Considere uma lista com n  livros, em que cada livro é modelado pela struct :
 
struct Livro {
                            string titulo,  editora, autor;
                            float preco;
};
 
A função X abaixo
 
void X (Livro v[ ], int &n, Livro L)
{
     v[n] = L;
     n++;
    cout << "Operação realizada com sucesso.";
}
 
implementa a operação de :
		
	 
	Inserção
	
	Busca
	
	Inicialização
	
	Ordenação por inserção
	
	Substituição
	Respondido em 06/05/2021 10:14:22
	
		8
          Questão
	
	
	As estruturas de dados em programação são muito utilizadas para tornar o acesso aos dados mais eficiente e organizado. A estrutura de dados considerada mais simples e tem como característica apresentar apenas uma dimensão é:
		
	
	Registro
	
	Função
	
	VariávelVetor
	
	Matriz
AULA 6 – A ESTRUTURA DE DADOS (PILHA)
		1
          Questão
	
	
	Pilha é uma estrutura de dados
		
	
	Cujo acesso aos seus elementos ocorre de forma aleatória.
	 
	Cujo acesso aos seus elementos segue a lógica LIFO.
	
	Que pode ser implementada somente por meio de vetores.
	
	Que pode ser implementada somente por meio de listas.
	
	Cujo acesso aos seus elementos segue tanto a lógica LIFO quanto a FIFO.
	Respondido em 06/05/2021 10:14:41
		2
          Questão
	
	
	A estrutura de dados Pilha funciona de acordo com o seguinte fundamento básico:
		
	 
	O primeiro a entrar é o último a sair.
	
	O primeiro a entrar é o primeiro a sair.
	
	Quem estra no topo da pilha não sai mais.
	
	O último a entrar é o último a sair.
	
	Tanto o primeiro como o último podem sair primeiro.
	Respondido em 06/05/2021 10:14:45
	
		3
          Questão
	
	
	Considere que existe uma rotina para inserir um valor inteiro em uma pilha de inteiros com o protótipo abaixo:       
 int push (int pilha[], int valor, int &topo); //retorno: 1=empilhou; 0=não empilhou
Considere que existe uma função que remove um valor de uma pilha, que possui o protótipo abaixo:
 int pop (int pilha[], int &valor, int &topo);//retorno: 1=desempilhou; 0=não desempilhou
Considere ainda a execução do seguinte trecho do programa principal:
int primeira[5], topoP=-1, segunda[5], topoS=-1, numero;
push (primeira, 3, topoP);
push (primeira, 5, topoP);
pop (primeira, numero, topoP);
push (segunda, numero, topoS);
push (segunda, 7, topoS);
push (primeira, 1, topoP);
    Ao final da execução do techo de código acima, responda, nesta ordem,  quantos valores haverá na pilha primeira,  quantos valores haverá na pilha segunda, qual é o valor no topo da pilha primeira e  qual é o valor no topo da pilha segunda.   
		
	
	3; 2; 3; 5
	
	1; 2; 1; 7
	
	2; 2; 3; 5
	 
	2; 2; 1; 7
	
	2; 1; 1; 5
	Respondido em 06/05/2021 10:14:50
		4
          Questão
	
	Tanto a operação TOP (acessa topo), quanto à operação POP (remover), permite acessar o último elemento armazenado em uma Pilha. Quanto à diferença entre ambas as operações em relação ao estado da Pilha é correto afirmar:
		
	
	A operação TOP remove um elemento e altera o estado da Pilha
	 
	Somente a operação POP altera o estado da Pilha
	
	Somente a operação TOP altera o estado da Pilha
	
	Ambas alteram o estado da Pilha
	
	Nenhuma das operações altera o estado da Pilha
	Respondido em 06/05/2021 10:14:55
		5
          Questão
	
	Algoritmo Pilha
Inicio
IniciarPilha(s)
enquanto (não for o final das entradas) faca
leia (num)
se (num !=  3) então
   Empilhar (s, num)
senão
   Desempilhar(s)
   x := ElementoTopo(s)
fimse
fimenquanto
fimalgoritmo
Considere que, no trecho do algoritmo acima, representado por seu pseudocódigo, seja fornecido para num, sucessivamente, os valores inteiros 1, 2, 3, 4, 5, 3 e 6. Nesse caso, ao final da execução do algoritmo, o valor de x será igual a ...
		
	
	5 e a pilha terá os valores 6, 3, 5, 4, 3, 2 e 1.
	
	2 e a pilha terá os valores 6, 4 e 1.
	
	3 e a pilha terá os valores 6, 5, 4, 2 e 1.
	 
	5 e a pilha terá os valores 6, 4 e 1.
	
	3 e a pilha terá os valores 6, 4 e 1.
	Respondido em 06/05/2021 10:14:58
		6
          Questão
	
	
	As estruturas de dados devem ser especificadas de modo que estas auxiliem as aplicações em sua principal tarefa ou funcionalidade. Sendo assim, pode-se desenvolver uma aplicação capaz de fazer a conversão de números da base 10, para a base binária, octal ou hexadecimal a partir de um algoritmo de divisões sucessivas. Este algoritmo baseia na divisão de um número decimal pela base que se deseja a transformação, armazenando o resto da divisão em uma estrutura de dados, efetuando nova divisão no resultado obtido da divisão prévia, novamente armazenando o resto desta operação na estrutura de dados e assim por diante até que o resultado da divisão seja zero. Neste momento, a estrutura possui exatamente, na ordem reversa, os algarismos correspondentes ao número convertido para a nova base. Analisando esta estratégia poder-se-ia dizer que a estrutura de dados mais propícia para tal tarefa é :
		
	
	Lista
	
	Fila
	
	Grafo
	
	Árvore
	 
	Pilha
	Respondido em 06/05/2021 10:15:03
	
		7
          Questão
	
	
	Para gerenciar o acesso do usuário às URL pelas quais ele já passou utilizando as teclas de avanço para trás e para frente, um navegador (Explorer, Chrome, Firefox, etc.) deve armazenar as URL em estruturas de:
		
	
	Listas
	
	Árvores
	 
	Pilhas
	
	Grafos
	
	Filas
	Respondido em 06/05/2021 10:15:10
		8
          Questão
	
	
	Considere dados sendo manipulados em uma pilha sequencial em que as operações possíveis são: inserção - push(novo valor) ou remoção - pop().
Se realizarmos a seguinte sequencia de operações:
push(A),push(B),push(C),pop(),pop(),push(D),pop(),pop().
Pode-se dizer que o interior da pilha apresenta-se:
		
	 
	Vazio
	
	Com os dados A e B
	
	Com os dados A e D
	
	Apenas com o dado A
	
	Apenas com o dado D
		1
          Questão
	
	
	A estrutura de dados linear que obedece o seguinte critério: o último elemento inserido será o primeiro elemento a ser retirado (LIFO) é:
		
	 
	Pilha
	
	Árvore AVL
	
	Lista circular
	
	Árvore binária
	
	Fila
	Respondido em 06/05/2021 10:15:28
		2
          Questão
	
	
	A estrutura de dados que segue a lógica LIFO (Last in First Out) é denominada :
		
	
	Fila
	
	Árvore
	
	Lista duplamente encadeada
	 
	Pilha
	
	Vetor
	Respondido em 06/05/2021 10:15:33
		3
          Questão
	
	
	Marque a opção que representa uma característica CORRETA a respeito da estrutura de dados pilha.
		
	 
	O último item inserido é o primeiro item a ser retirado.
	
	Não é possível criar uma pilha utilizando vetores.
	
	O primeiro item inserido é o primeiro a ser retirado.
	
	Os acessos aos itens ocorrem de forma aleatória.
	
	O último item inserido é o último item a ser retirado.
	Respondido em 06/05/2021 10:15:37
		4
          Questão
	
	
	Em termos da estrutura de dados do tipo PILHA, a sequência de ações empilha(10), empilha(3), empilha(5), empilha(8), desempilha(), desempilha(), empilha(20), promoveria a configuração da estrutura a partir do topo :
		
	
	10 3 5 8
	
	5 8 20
	
	20 3 5 8
	
	20 10 3
	 
	20 3 10
	Respondido em 06/05/2021 10:15:41
		5
          Questão
	
	Ao remover um elemento armazenado em uma pilha é necessário a atualização da variável (Topo) indicadora de posição. Qual das alternativas abaixo está correta?
		
	
	Antes a operação de remoção decrementa a variável indicadora de posição.
	
	Após a operação de remoção incrementa a variável indicadora de posição.
	
	Após a operação de remoção incrementa a variável indicadora de inicio.
	
	Antes da operação de remoção incrementa a variável indicadora de posição.
	 
	Após a operação de remoção decrementa a variável indicadora de posição.
	Respondido em 06/05/2021 10:15:46
	
		6
          Questão
	
	
	Considere uma pilha sequencial de números reais representada por
 
    struct Pilha {
                             int topo;
                            float v[10];
    };
 
onde temos     Pilha p;
 
Marque a  opção que corretamente inicializa a pilha :
 
 
 
		
	 
	p.topo = -1;
	
	 
Pilha.topo = 0;
 
 
	
	 
p->topo = 0;
 
 
	
	 
topo.pilha = -1;
 
 
	
	 
Pilha.topo = -1;
	Respondido em 06/05/2021 10:15:49
	
		7
          Questão
	
	Um jogo de memória fornece sequências de números e o jogador deve dizer qual a sequência inversa para cada nova sequência fornecida pelo jogo. Qual a estrutura de dados mais adequada para modelar esse jogo ?
		
	
	lista
	 
	pilha
	
	fila
	
	árvore
	
	grafo
	Respondido em 06/05/2021 10:15:51
	
		8
          Questão
	
	Assinale a opção que apresenta uma estrutura de dados embasada no princípio last in, first out (LIFO) ¿ último a entrar, primeiro a sair ¿, na qual,conforme a inserção, os dados inseridos primeiramente na estrutura são os últimos a serem removidos.
		
	
	listas
	 
	pilhas
	
	árvores
	
	filas
	
	vetores
AULA 7 – A ESTRUTURA DE DADOS (FILA)
		1
          Questão
	
	
	A estrutura de dados conhecida pela lógica  FIFO (First In First Out) é denominada  :
		
	
	Pilha
	
	Vetor
	
	Árvore
	 
	Fila
	
	Lista circular
	Respondido em 06/05/2021 10:16:06
		2
          Questão
	
	
	Escolha a opção verdadeira :
		
	
	Uma pilha, a depender de sua configuração, pode funcionar como uma fila
	
	Uma estrutura de dados que segue a lógica FIFO permite inclusões apenas no topo da estrutura de dados.
	
	Pilhas e filas não podem ser implementadas através do uso de listas encadeads
	
	Uma estrutura de dados que segue a lógica FIFO equivale a uma estrutura de dados  que segue a lógica LIFO.
	 
	Em uma estrutura de dados que segue a lógica LIFO, os dados são excluídos na ordem inversa em que foram incluídos.
	Respondido em 06/05/2021 10:16:13
		3
          Questão
	
	
	   Considere uma fila simples F  de inteiros,  do tipo Fila definido abaixo. Tal fila deverá armazenar códigos de agentes de uma firma de espionagem, desde que haja espaço para um novo agente.  Assinale a opção que corretamente desenfileira o código de um agente, sabendo que a fila F foi inicializada de acordo com o trecho de código abaixo.
struct Fila {     in t v[100], inicio, fim; } ;
Fila F;
F. inicio = 0;
F.fim = -1;
 
 
		
	
	 
void desenfileirar(Fila &F)  {
       if (F.inicio > F.fim)
            cout << "Não há agentes para retirar. " << endl;
     else  {
         cout << "Removido o agente " <<     F.v[F.inicio];
     }
}
	
	 
void desenfileirar(Fila &F)  {
        if (F.fim == -1 && F.inicio == 0)
            cout << "Não há agentes para retirar. " << endl;
       else  {
            cout << "Removido o agente " <<     F.v[F.inicio];
             F.inicio++;
       }
}
 
	
	 
void desenfileirar(Fila F)  {
   cout << "Removido o agente " <<     F.v[F.inicio];
   F.inicio--;
 }
 
	 
	void desenfileirar(Fila &F)  {
        if (F.inicio > F.fim)
            cout <<  "Não há agentes para retirar. " << endl;
       else  {
             cout <<  "Removido o agente "  <<     F.v[F.inicio];
             F.inicio++;
       }
}
	
	 
void desenfileirar(Fila  F)  {
       if (F.inicio > F.fim)
            cout << "Não há agentes para retirar. " << endl;
     else  {
          cout << "Removido o agente " <<     F.v[F.inicio];
         F.inicio++;
    }
}
	Respondido em 06/05/2021 10:16:19
	
		4
          Questão
	
	
	Seja Q uma estrutura de dados do tipo fila, em que ENQUEUE(X) significa a adição do elemento X à Q e que DEQUEUE(), a retirada de um elemento. Q está inicialmente vazia e sofre a seguinte sequencia de operações:
ENQUEUE(1)
ENQUEUE(2)
DEQUEUE()
ENQUEUE(3)
ENQUEUE(4)
DEQUEUE()
DEQUEUE()
ENQUEUE(5)
Ao final da sequencia, a soma dos elementos de que (Q) será?
		
	 
	9
	
	6
	
	5
	
	0
	
	15
	Respondido em 06/05/2021 10:16:25
	
		5
          Questão
	
	
	Ao treinar macacos, foi realizado um jogo para avaliar sua  memória. O cientista fornecia sequências de cartas com figuras geométricas e o macaco devia reproduzir a mesma sequência usando figuras geométricas reais.  Qual a estrutura de dados mais adequada para modelar esse jogo ?
		
	
	árvore
	
	grafo
	
	lista
	 
	fila
	
	pilha
	Respondido em 06/05/2021 10:16:29
		6
          Questão
	
	
	Considere uma estrutura de dados, representada pela variável P, com procedimentos de inclusão, exclusão e consulta do próximo elemento (e) disponível na estrutura, obedecendo às seguintes propriedades:
 Pode-se concluir, então, que P corresponde à seguinte estrutura de dados?
		
	 
	PILHA
	
	STRUCT
	
	CONJUNTO
	
	LISTA
	
	PONTEIRO
	Respondido em 06/05/2021 10:16:38
		7
          Questão
	
	
	IFMT - Técnico em Técnologia da Informação - 2013
   Considere a função insere(x: inteiro), que recebe como parâmetro um número inteiro e o insere em uma Fila, e  ainda, a função remove(), que retira um valor de uma Fila.
   Dada a Fila [3-4-6-8-10], executam-se os comandos na ordem: insere(1), insere(2), remove().
   Após a execução desses comandos, qual será a Fila resultante?
		
	
	[2-3-4-6-8-10]
	
	[3-4-6-8-10]
	 
	[4-6-8-10-1-2]
	
	[2-1-3-4-6-8]
	
	[3-4-6-8-10-1]
	Respondido em 06/05/2021 10:16:42
		8
          Questão
	
	
	         Assinale a opção que, corretamente, mostra exemplos em que a estrutura de dados fila é usada, de acordo com o critério de inserções e remoções que rege tal estrutura.
		
	
	Fila de documentos para xerox e fila de arquivos para impressão.
	
	Fila de pessoas para tirar o visto e fila de pessoas para usar o caixa eletrônico.
	 
	Fila de arquivos para impressão e buffer para gravação de dados em fila.
	
	Buffer para gravação de dados em mídia e fila de pessoas para comprar o ticket do metrô.
	
	Fila de arquivos para impressão e fila de pessoas no caixa de um supermercado.
		1
          Questão
	
	
	Considere uma fila simples F  de inteiros,  do tipo Fila definido abaixo. Tal fila deverá armazenar códigos de agentes de uma firma de espionagem, desde que haja espaço para um novo agente.  Assinale a opção que corretamente enfileira o código de um agente, sabendo que a fila F foi inicializada de acordo com o trecho de código abaixo.
struct Fila {     in t v[100], inicio, fim; } ;
Fila F;
F. inicio = 0;
F.fim = -1;
 
 
		
	
	void enfileirar(Fila F, int codigo)  {
     F.fim++;
    F.v[F.fim] = codigo;
}
 
	
	 
void enfileirar(Fila &F, int codigo)  {
    F.v[F.fim] = codigo;
     F.fim++;
}
	
	void enfileirar(Fila F, int codigo)  {
       if (F.fim == 100)
            cout << "Não há espaço na firma para mais agentes. " << endl;
     else  {
         F.fim++;
        F.v[F.fim] = codigo;
   }
}
 
	 
	void enfileirar(Fila &F, int codigo)  {
       if (F.fim == 99)
            cout << "Não há espaço na firma para mais agentes. " << endl;
      else  {
         F.fim++;
        F.v[F.fim] = codigo;
    }
}
 
	
	void enfileirar(Fila &F, int codigo)  {
       if (F.fim == 99)
            cout <<  "Não há espaço na firma para mais agentes. " << endl;
      else
           F.fim++;
    F.v[F.fim] = codigo;
}
 
 
	Respondido em 06/05/2021 10:17:00
	
		2
          Questão
	
	
	Ao inserirmos em uma estrutura de dados do tipo fila sequencial os seguintes elementos: A, B, C, D, exatamente nesta ordem. E em seguida realizarmos duas operações consecutivas de remoção na fila e imediatamente inserirmos dois novos elementos o X e o W. Podedmos afirmar que se realizarmos uma nova operação de remoção, o elemento que será removido desta fila sera o:
		
	
	X
	
	W
	
	D
	
	A
	 
	C
	Respondido em 06/05/2021 10:17:04
		3
          Questão
	
	    Considere uma fila circular de tamanho 5, contendo os valores A, Z e C. Assim,  o início está na posição 0 (zero) e  o fim na posição 2 (dois). Dica: O vetor inicia na posição 0 (zero). Supondo agora que as seguintes operações ocorrerão na lista:
1. D é inserido
2. H é inserido
3. Um elemento é deletado
4. F é inserido
5. Um elemento é deletado
Qual os valores de  início e fim ao final dessas operações?
		
	
	Início 4 e fim 4
	
	Início 0 e fim 0
	
	Nenhuma das opções
	
	Início 1 e fim 4
	 
	inicio 2 e fim 0
	Respondido em 06/05/2021 10:17:07
		4
          Questão
	
	Um aluno do EAD estava estudando para a prova de Estrutura quando viu o trecho do programa abaixo em uma apostila.
                      
Como não estava com seu micro, começou a analisar a função entra(...), ficando atento a alguns membros da struct.
Quando finalizou, virou a página da apostila e viu a resposta. Então, ficou muito feliz por ter identificado a estrutura
Assinale a alternativa onde está presente a resposta correta.
		
	 
	Fila Circular
	
	Lista Linear
	
	Lista simplesmente encadeada
	 
	Fila
	
	Pilha
	Respondido em 06/05/202110:17:11
	
		5
          Questão
	
	
	      As filas sequenciais são estruturas de dados utilizadas em diversas aplicações, tais como fila de processo, fila de impressão, sistemas de senha etc. Entretanto, nas aplicações onde há muita movimentação de dados, inserções e remoções de dados na fila, surgem espaços ociosos que podem levar ao fenômeno chamado de esgotamento de memória. Para sanar este problema pode-se substituir a fila sequencial por:
		
	
	lista circular
	
	pilha sequencial
	
	pilha circular
	
	lista sequencial
	 
	fila circular
	Respondido em 06/05/2021 10:17:16
	
		6
          Questão
	
	Para organizar o acesso dos processos que demandam recursos do computador (uso da CPU, acesso ao disco rígido e a outros dispositivos de Entrada e Saída), o Sistema Operacional gerencia essas demandas colocando os processos requisitantes em:
		
	
	Listas
	 
	Filas
	
	Structs
	
	Árvores
	
	Pilhas
	Respondido em 06/05/2021 10:17:19
		7
          Questão
	
	Considerando que uma fila seqüencial utiliza dois apontadores para indicar suas posições de final e início da estrutura, supondo que a fila foi criada com os apontadores apontando para a posição zero do vetor, qual das alternativas a seguir pode caracterizar uma fila vazia?
		
	 
	Quando o apontador de posição final for igual ao início.
	
	Quando o apontador de final menos um (final-1) for igual ao inicio.
	
	Quando o apontador de final apontar para zero.
	
	Quando o apontador de início apontar para zero.
	
	Quando os apontadores de final e início apontarem para zero.
	Respondido em 06/05/2021 10:17:25
		8
          Questão
	
	
	Pode-se citar os seguintes exemplos de aplicação da estrutura fila: Fila de arquivos para impressão:
· Atendimento de processos requisitados a um sistema operacional.
· Buffer para gravação de dados em mídia.
· O tratamento do armazenamento das teclas que estão sendo digitadas antes da tecla enter ser pressionada.
Agora analise as seguintes afirmativas:
 I- Uma fila guarda a ordem direta em que os elementos foram armazenados.
 II- Uma fila guarda a ordem reversa em que os elementos foram armazenados.
 III- O algoritmo que é implementado em uma fila é baseao no princípio: " O último a entrar é o primeiro a sair".
IV- O algoritmo que é implementado em uma fila é baseao no princípio: " O primeiro a entrar é o primeiro a sair".
 Marque a alternativa correta:
		
	
	Apenas a IV está correta
	 
	I e IV estão corretas
	
	II e Iv estão corretas
	
	I e III estão corretas
	
	II e III estão corretas
AULA 8 – ALOCAÇÃO DINÂMICA/LISTAS ENCADEADAS (INTRODUÇÃO)
		1
          Questão
	
	
	Dr. Pei Tam possui uma lista não ordenada de pacientes de seu consultório em que registra apenas o nome endereço e o telefone de cada paciente. Como não há limites para o crescimento de sua lista, como se pode implementar a inserção de um novo paciente na lista, sabendo que cada paciente é do tipo Paciente e a lista é do tipo List assim definidos :
struct Paciente {
     long int matricula;
      string nome, endereco e tel;
};
struct List {
                           Paciente p;
                           struct List *link;
                  };
		
	
	List  insereCliente(List *i, Paciente pac)
{
      List  novo[];
      novo[0].p = pac;
      novo[0].link = i;
     return novo;
}
	 
	List * inserePac(List *i, Paciente pt)
{
      List *novo = new List;
      novo->p = pt;
      novo->link =i;
     return novo;
}
	
	 List * inserePac(List *i, Paciente pac)
{
      List *novo = new List;
      novo.p = pac;
      novo.link = i;
     return novo;
}
	
	List * inserePac(List  *i, Paciente pt){
      List *novo ;
      novo->p = pt;
      novo->link = i;
     return novo;
}
	
	List * inserePac(List *i)  {
      List *novo = new List;
     Paciente pat;
      novo->p =  pat;
      novo->link = i;
     return novo;
}
	Respondido em 06/05/2021 10:17:52
	
		2
          Questão
	
	
	As structs (estruturas) são utilizadas para modelar os nodos de estruturas dinâmicas como, por exemplo, as listas encadeadas, seja o seguinte exemplo de nodo de uma lista de produtos: struct nodo{ float valor; string produto; nodo * proximo; }; Suponha que um determinado ponteiro pt esteja apontando para um nodo desta lista, e que se queira alterar o conteúdo do campo valor deste nodo, que está sendo apontado por pt, para 5.60. Marque a alternativa que corretamente possibilita esta operação:
		
	 
	pt->valor=5.60;
	
	pt->próximo->valor=5.60;
	
	pt->próximo.valor=5.60;
	
	pt->5.60;
	
	pt.valor->5.60;
	Respondido em 06/05/2021 10:17:57
	
		3
          Questão
	
	
	Qual o valor de x no final do programa? int main() { int x, *p, y; x = 2; p = &x; y = *p; y = 5; (*p)++; (*p) = (*p) - y; return(0); }
		
	
	2
	
	Nenhuma das anteriores. O programa possui um erro de sintaxe.
	 
	-2
	
	8
	
	5
	Respondido em 06/05/2021 10:18:00
		4
          Questão
	
	
	Em uma aplicação que usa processos de alocação estática e dinâmica de memória é correto afirmar que
		
	
	A memória utilizada pela aplicação é totalmente alocada após o inicio de sua execução
	
	Apenas a memória associada às variáveis do tipo vetor é alocada após o inicio da execução da aplicação
	 
	A memória utilizada pela aplicação é inicialmente estática, mas pode mudar
	
	Toda a memória utilizada pela aplicação não muda durante toda a sua execução
	
	Todas as afirmações acima são incorretas
	Respondido em 06/05/2021 10:18:04
	
		5
          Questão
	
	
	Seja uma lista encadeada cujos nodos são formados pelo seguinte tipo de dado:
struct empregado{
     long int matricula;
     float salario;
   empregado *proximo;
};
 
Suponha que o ponteiro pont tenha o endereço de um nodo da lista, o qual se deseja atribuir um novo valor para o campo salario. Marque a alternativa que corretamente altera o valor do campo salario para 5000.00.
		
	
	pont->empregado->salario=5000.00;
	
	pont.salario=5000.00;
	 
	salario=5000.00;
	
	pont.empregado.salario=5000.00
	
	pont.empregado->salario=5000.00;
	Respondido em 06/05/2021 10:18:06
		6
          Questão
	
	
	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.
	
	Acesso, representação, compartilhamento de memória.
	
	Proteção de memória, transferência de dados, estruturas simples.
	 
	Compartilhamento de memória, maleabilidade e facilidade para inserção e remoção de componentes.
	Respondido em 06/05/2021 10:18:11
		7
          Questão
	
	
	Admita a seguinte estrutura de nó de uma lista simplesmente encadeada: struct tno { int chave; tno *proximo; }; Admita, agora, a seguinte declaração de uma variável do tipo nó: tno *no; Qual das alternativas a seguir traz uma operação válida sobre essa variável?
		
	 
	no->proximo = new tno;
	
	no.chave = 5;
	
	no->proximo = -10;
	
	no.proximo = no;
	
	no->chave = new int;
	Respondido em 06/05/2021 10:18:18
		8
          Questão
	
	
	Em uma lista linear simplesmente encadeada.
		
	
	O ponteiro do "último" nó não é NULL, mas sim aponta de volta para o "primeiro" nó da lista.
	
	O ponteiro do "primeiro" nó não é NULL, mas sim aponta de volta para o "primeiro" nó da lista, formando um ciclo.
	
	Cada ponteiro possui um só endereço que referencia o primeiro nó da lista.
	
	Além do campo relativo ao dado, cada nó possui dois ponteiros,
	 
	Cada nó possui um só ponteiro que referencia o próximo nó da lista.
		1
          QuestãoPara a criação de uma Fila seqüencial basta iniciar as variáveis de início e final, ou seja, apontá-las para as posições iniciais do vetor. O que alteraria na rotina de inserir se a variável final fosse inicializada com o valor -1 (menos um):
		
	 
	Antes da inserção deve-se fazer o incremento da variável final
	
	Após a inserção deve-se fazer o incremento da variável inicio
	
	Antes da inserção deve-se fazer o decremento da variável final
	
	Após a inserção deve-se fazer o decremento da variável final
	
	Após a inserção deve-se fazer o incremento da variável final
	Respondido em 06/05/2021 10:18:36
	
		2
          Questão
	
	
	Qual o valor de x no final do programa? int main() { int x, *p, y; x = 3; p = &x; y = *p; y = 7; (*p)++; (*p) += y; return(0); }
		
	
	3
	 
	11
	
	7
	
	-4
	
	Nenhuma das anteriores. O programa possui um erro de sintaxe.
	Respondido em 06/05/2021 10:18:39
		3
          Questão
	
	Em uma rotina em que se pretenda inserir o primeiro dado em uma estrutura dinâmica, é correto afirmar que:
		
	
	Existe uma instrução de repetição para percorrer a lista.
	
	Só deve existir estrutura de repetição se ocorrer a inclusão de mais de um dado simultaneamente
	 
	Não deve existir uma estrutura de repetição.
	
	Deve existir uma estrutura de repetição somente de a lista for duplamente encadeada.
	
	Deve existir uma estrutura de repetição somente se a estrutura for circular.
	Respondido em 06/05/2021 10:18:43
	
		4
          Questão
	
	
	A linguagem C++ oferece quatro meios de criação de tipos de dados: matrizes, estruturas ou structs, uniões e classes. As estruturas, que passaremos a chamar simplesmente de structs, são tipos de variáveis que agrupam dados geralmente desiguais, enquanto matrizes são variáveis que agrupam dados similares. Devido a esta característica as structs são utilizadas para modelar nodos (nós) de estruturas dinâmicas. Portanto podemos afirmar que:
		
	
	As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de compilação e terem seus tamanhos alterados de acordo com a demanda.
	
	As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tanto em tempo de execução quanto em tempo de compilação, mas não podem ter seus tamanhos alterados de acordo com a demanda.
	
	As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de compilação e entretanto seus tamanhos só são alterados na codificação de acordo com a demanda.
	
	As estruturas dinâmicas são assim chamadas, pois não podem fazer alocação de memória em tempo de execução, mas mesmo assim conseguem ter seus tamanhos alterados de acordo com a demanda.
	 
	As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de execução e terem seus tamanhos alterados de acordo com a demanda.
	Respondido em 06/05/2021 10:18:46
		5
          Questão
	
	
	Sou uma empresária que quer crescer e por isso, tenho que aumentar progressivamente a minha lista de clientes, sem limitar este crescimento. Assim, à medida que novos clientes são cadastrados, posso, se necessário, contratar mais e mais empregados. Marque a opção que especifica o tipo de lista e o tipo de alocação de memória mais adequados para este problema.
		
	
	fila dinâmica e alocação dinâmica de memória
	
	pilha dinâmica e alocação dinâmica de memória
	 
	lista encadeada e alocação dinâmica de memória
	
	fila encadeada e alocação dinâmica de memória
	
	lista sequencial e alocação dinâmica de memória
	Respondido em 06/05/2021 10:18:53
	
		6
          Questão
	
	
	As variáveis são na verdade trecho de memórias que armazenam dados de diversas naturezas, portanto sempre que declara-se uma variável, na linguagem C++, é necessário informar o tipo de dado que esta irá armazenar. Um tipo especial de variáveis são os ponteiros, isto é, variáveis que armazenam apenas os endereços de outras variáveis. Assim os ponteiros são usados para que se possa acessar de forma indireta uma outra variável. Sabendo-se disto e supondo que o endereço na memória da variável "a" é 100 e o endereço da memória da variável ponteiro é 200, analise o trecho de código abaixo e marque a alternativa que representa  a saída do programa:
 
		
	
	9 9 200
	 
	100 9 200
	
	200 9 100
	
	100 100 200
	
	9 100 200
	Respondido em 06/05/2021 10:18:57
		7
          Questão
	
	
	O conceito de ponteiros foi estudado em uma de nossas aulas. Sendo assim, leia atentamente as afirmativas abaixo e assinale a opção correta.
I A variável ponteiro não precisa ser declarada.
II A variável ponteiro armazena endereço.
III Quanto se usa &nomeDaVariávelPonteiro com o comando cout, é exibido o endereço da variável apontada pela variável ponteiro.
IV Quando se usa nomeDaVariávelPonteiro com o comando cout, é exibido o endereço da variável ponteiro.
V Quando se usa *nomeDaVariávelPonteiro com o comando cout, é exibido o conteúdo da variável apontada pela variável ponteiro.
		
	 
	I, II e IV estão corretas
	
	I IV e V estão corretas
	 
	II e V estão corretas
	
	IV e V estão corretas
	
	Somente a II está correta
	Respondido em 06/05/2021 10:18:59
	
		8
          Questão
	
	As structs (estruturas) são utilizadas para modelar os nodos de estruturas dinâmicas como, por exemplo, as listas encadeadas, seja o seguinte exemplo de nodo de uma lista de produtos:
 
struct nodo{
                     float valor;
                     string produto;
                     nodo * proximo;
           };
 
Suponha que um determinado ponteiro pt  esteja apontando para um nodo desta lista, e que se queira alterar o conteúdo do campo valor deste nodo, que está sendo apontado por pt, para 5.60. Marque a alternativa que corretamente possibilita esta operação:
		
	
	pt->próximo->valor=5.60;
	
	pt.valor->5.60;
	
	pt->próximo.valor=5.60;
	
	pt->5.60;
	 
	pt->valor=5.60;
AULA 9 – LISTAS ENCADEADAS (FINALIZANDO/PILHAS E FILAS)
		1
          Questão
	
	
	Sabendo que uma fila encadeada possui seus nós definidos pela :
struct no {
int x;
no *prox;
};
Marque a alternativa que representa corretamente a criação ou alocação do nó na sintaxe do C++ para utilização na fila.
		
	
	p *no -> new no;
	
	no p -> new no;
	 
	no *p=new no;
	
	p *no=new no;
	
	no *p -> new no;
	Respondido em 06/05/2021 10:19:22
	
		2
          Questão
	
	
	Estava um aluno estudando Lista Simplesmente Encadeada quando encontrou  em um site a definição da struct nodo e de uma função cujo nome você deverá escolher para substituir XXX nas opções abaixo depois que analisar a função, assumindo que teste foi realizado, permitindo  que a operação fosse realizada.
 
 struct nodo
{
  int info;
  struct nodo *prox;
};
nodo* XXX(nodo *ptr, int valor)
{
  nodo *temp = new nodo;
  ...
  temp->info = valor;   
  temp->prox = ptr;
  return temp;        
}
		
	
	ListaNo
	 
	InsereNoFrente
	
	InsereNoFim
	
	BuscaNaLista
	
	RemoveNo
	Respondido em 06/05/2021 10:19:26
	
		3
          Questão
	
	
	Seja o seguinte exemplo de nodo de uma lista de encadeada:
 
struct nodo{
                     float valor;
                     string produto;
                     nodo * proximo;
           };
Sabendo-se que nesta lista o último nó ou nodo possui o campo próximo nulo (null), marque a alternativa que representa corretamente a operação de busca do último nodo, a partir de um ponteiro pt apontado para o primeiro nodo da lista.
		
	
	while(pt != null)pt=pt->próximo;
	
	while(pt->próximo != null)pt=pt->próximo->proximo;
	
	while(pt->próximo->proximo)pt=pt->próximo;
	
	while(próximo)pt=próximo;
	 
	while(pt->próximo)pt=pt->próximo;
	Respondido em 06/05/2021 10:19:30
		4
          Questão
	
	
	A pilha é uma estrutura de dados que permite a inserção/ remoção de itens dinamicamente seguindo a norma de último a entrar, primeiro a sair. Suponha que para uma estrutura de dados, tipo pilha, são definidos

Outros materiais