Buscar

Estrutura de Dados I

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

Q03 - Questionário 03
Entrega 12 mar em 23:59 Pontos 0,4 Perguntas 4
Disponível 23 jan em 0:00 - 12 mar em 23:59 Limite de tempo Nenhum
Tentativas permitidas 2
Instruções
Este teste foi travado 12 mar em 23:59.
Histórico de tentativas
Tentativa Tempo Pontuação
MAIS RECENTE Tentativa 1 2 minutos 0,4 de 0,4
 As respostas serão mostradas após a última tentativa
Pontuação desta tentativa: 0,4 de 0,4
Enviado 29 jan em 12:43
Esta tentativa levou 2 minutos.
Instruções do Questionário!
1. Antes de responder o Questionário: Assista a videoaula e leia o capítulo correspondente do livro.
2. Abra o questionário somente quando for responder;
3. Ao abrir o questionário você terá 4 questões para responder;
4. Leia com calma todas as questões e entenda o que pede a questão: se pede a incorreta, a correta e qual o tema
da questão;
5. Lembre-se de Clicar no botão "Enviar Teste";
6. Você tem duas tentativas para fazer o teste, a segunda tentativa é opcional;
7. Lembre-se que as respostas mudam de lugar em cada tentativa;
8. As respostas corretas só aparecem após o envio da segunda tentativa;
9. O sistema considera a maior nota entre as duas tentativas;
10. Lembre-se que a segunda tentativa vai zerar TODAS as questões, inclusive as que você acertou na primeira
tentativa;
11. Caso queira ter o questionário para arquivo pessoal, basta selecionar a impressão do questionário e escolher a
opção de "salvar em PDF";
Bons estudos! 😀
 
0,1 / 0,1 ptsPergunta 1
Existe uma forma de organizar trechos de código em blocos para que sejam
utilizados diversas vezes, mas de maneira diferente de como é feito em laços de
repetição. As chamadas funções isolam partes de um código e permitem uma
https://ucaead.instructure.com/courses/60906/quizzes/131021/history?version=1
reutilização deste bloco de instruções toda vez que a função principal "main"
necessite de suas funcionalidades, por exemplo. 
 
A partir dos conceitos fundamentais de funções vistos na disciplina, analise as
afirmativas a seguir, dentre as informações passadas.
 
I. Funções podem conter instruções de desvio de fluxo de execução dentro de si
própria.
II. Funções podem chamar a si mesmas para realizar cálculos e outros
processamentos.
III. Uma função pode conter blocos de instruções de laços de repetição, vetores,
entrada e saída.
IV. Em uma função não são permitidos parâmetros de tipos diferentes em sua
declaração.
V. Funções podem manipular dados internamente e devolver dados manipulados
ao código chamador.
 
É correto o que se afirma em:
 I, e V, apenas. 
 I, II, III e V, apenas. 
 I, II, III, apenas. 
 I, II, e V, apenas. 
 I e II, apenas. 
0,1 / 0,1 ptsPergunta 2
"Uma função é uma sub-rotina que tem como objetivo desviar a execução do
programa principal para realizar uma tarefa específica."
ASCENCIO, A. F. G.; CAMPOS, E. A. V. Fundamentos da programação de computadores. 5. ed.
São Paulo: Prentice Hall, 2010.
 
O trecho de Código Fonte abaixo apresenta a função fatorial() que realiza o cálculo
do fatorial de um número inteiro n, que deve ser passado por parâmetro.
 
1 - #include <stdio.h>
2 - #include <stdlib.h>
3 - int fatorial(int n){
4 - int i, fat;
5 - fat = 1;
6 - for(i=1; i<=n; i++){
7 - fat = fat * i;
8 - }
9 - return fat;
10 - }
11 - int main(){
12 - int n, resultado;
13 - n = 5;
14 - resultado = fatorial(n);
15 - printf("%d", resultado);
16 - }
 
Sendo assim, analise as afirmações abaixo.
I – Caso a função seja invocada da seguinte maneira: "fatorial(4);", será retornado o
valor 24.
II – O tipo da variável "fat", retornada na linha 9, está compatível com o tipo de
retorno da função fatorial.
III – Se a função for invocada de maneira que o parâmetro "n" valha 0 (zero), o
algoritmo entrará em loop infinito.
 
Sendo assim, é correto o que se afirma em:
 III, apenas. 
 I e II, apenas. 
 II, apenas. 
 I, apenas. 
 I, II e III. 
0,1 / 0,1 ptsPergunta 3
Uma lista duplamente encadeada é representada com nó de 3 elementos: 1 para os
dados, 1 para o ponteiro para o próximo e 1 para o ponteiro para o anterior. Analise
a imagem a seguir e assinale a alternativa correta.
 
Se o elemento atual for o primeiro elemento da lista, ao buscar caminhar para o
anterior ela volta ao final e retorna o último elemento.
 
A lista da imagem está incorreta, pois a lista duplamente encadeada deve ter um
ponteiro para o início e outro para o fim.
 
A lista duplamente encadeada facilita percorrer os elementos em ambas as direções,
pois possui ponteiros para o anterior e para o próximo.
 
A principal vantagem da lista duplamente encadeada é a replicação de dados, pois os
dados são referenciados por outros dois elementos.
 A estrutura não representa uma lista, mas sim uma pilha. 
0,1 / 0,1 ptsPergunta 4
Uma lista encadeada pode ser representada como um elemento do tipo nó, que
possui uma variável para o dado e outra que é um ponteiro para o próximo. Além
disso, há uma variável que aponta para o início da lista. A respeito de listas
encadeadas, assinale as afirmativas corretas:
 
I – Uma lista dinâmica pode ter qualquer tamanho que caiba a memória, pois os
elementos são adicionados dinamicamente, mas ela deve ter o mínimo de um
elemento, para que o ponteiro que aponta para o início não se perca.
II – O último elemento da lista deve apontar para o elemento nulo (NULL), mesmo
que ele seja também o primeiro elemento da lista.
III – Uma lista vazia possui o ponteiro de início apontando para o elemento nulo
(NULL).
IV – Uma lista é considerada cheia quando o último elemento aponta para o
elemento fim
 I, II e III apenas. 
 II, III e IV apenas. 
 II e III apenas. 
 III e IV apenas. 
 I e II apenas. 
Pontuação do teste: 0,4 de 0,4
Q04 - Questionário 04
Entrega 12 mar em 23:59 Pontos 0,4 Perguntas 4
Disponível 30 jan em 19:00 - 12 mar em 23:59 Limite de tempo Nenhum
Tentativas permitidas 2
Instruções
Este teste foi travado 12 mar em 23:59.
Histórico de tentativas
Tentativa Tempo Pontuação
MAIS RECENTE Tentativa 1 3 minutos 0,4 de 0,4
 As respostas serão mostradas após a última tentativa
Pontuação desta tentativa: 0,4 de 0,4
Enviado 21 fev em 19:34
Esta tentativa levou 3 minutos.
Instruções do Questionário!
1. Antes de responder o Questionário: Assista a videoaula e leia o capítulo correspondente do livro.
2. Abra o questionário somente quando for responder;
3. Ao abrir o questionário você terá 4 questões para responder;
4. Leia com calma todas as questões e entenda o que pede a questão: se pede a incorreta, a correta e qual o tema
da questão;
5. Lembre-se de Clicar no botão "Enviar Teste";
6. Você tem duas tentativas para fazer o teste, a segunda tentativa é opcional;
7. Lembre-se que as respostas mudam de lugar em cada tentativa;
8. As respostas corretas só aparecem após o envio da segunda tentativa;
9. O sistema considera a maior nota entre as duas tentativas;
10. Lembre-se que a segunda tentativa vai zerar TODAS as questões, inclusive as que você acertou na primeira
tentativa;
11. Caso queira ter o questionário para arquivo pessoal, basta selecionar a impressão do questionário e escolher a
opção de "salvar em PDF";
Bons estudos! 😀
 
0,1 / 0,1 ptsPergunta 1
Ao aplicar a busca em uma lista simples ou dupla ordenada, as interações partem
do ponteiro na posição inicial e vão até o último, antes a leitura se encerrava ou
efetuava a busca inversa, aplicando o conceito de listas circulares é possível
https://ucaead.instructure.com/courses/60906/quizzes/131024/history?version=1
navegar pela lista de modo simples indo do primeiro até o último elemento, partindo
de qualquer direção. Como isso é possível?
 
O último elemento indica como null o próximo elemento, isso faz com que a lista seja
reiniciada e a navegação retorne ao início.
 
O primeiro elemento deverá indicar o últimoelemento, o último elemento indica como
null o próximo.
 
O primeiro elemento da lista, o ponteiro de indicação do anterior deverá indicar o
último elemento, já o último elemento em seu ponteiro próximo deverá indicar o
primeiro elemento da lista.
 
O último elemento indica como null o próximo elemento, isso faz com que a lista seja
reiniciada e a navegação retorne ao início.
 
A principal vantagem da lista circular está no fato de poder percorrer as posições do
elemento usando um GAP de distância.
0,1 / 0,1 ptsPergunta 2
Compreendemos que ao se utilizar a lista duplamente encadeada temos uma maior
flexibilidade ao lidar com os elementos armazenados, entretanto temos uma
situação visto que os elementos poderão ser inseridos fora de ordem, por estarem
fora de ordem de inserção no vetor, mas sim os dados armazenados em si. O fato
de estarem fora de ordem, gera um consumo mais elevado dos recursos
computacionais. Sobre as regras de ordenação dos elementos em uma lista linear,
podemos afirmar que:
 A ordenação acontece a cada inclusão obrigatoriamente. 
 A ordenação poderá acontecer apenas na inclusão de novos elementos. 
 A ordenação acontece apenas a conclusão da inserção de todos os elementos. 
 A ordenação poderá acontecer apenas na exclusão de novos elementos. 
 
A ordenação poderá acontecer a qualquer momento de inclusão ou remoção de
dados.
0,1 / 0,1 ptsPergunta 3
O uso de ponteiros possibilita a criação de listas dinâmicas. A respeito do uso de
ponteiros e listas, analise as afirmativas a seguir.
 
1. As listas dinâmicas não possuem um valor máximo de elementos fixos.
Podemos inserir quantos elementos forem necessários, desde que caibam na
memória.
2. As listas estáticas reservam o tamanho máximo que podem ocupar em memória
assim que são definidas.
3. Ao remover um elemento em uma lista dinâmica, se não apontarmos
corretamente o elemento anterior para o próximo, podemos perder os dados de
parte da lista.
4. Listas dinâmicas crescem na memória dinamicamente até o tamanho máximo
definido em sua criação.
5. Listas dinâmicas podem ter tamanhos maiores que listas estáticas
 
É correto o que se afirma em:
 I, II e III, apenas. 
 I, II, III,e V, apenas. 
 II, III, IV e V, apenas. 
 I e II, apenas. 
 II, III, IV e V, apenas. 
0,1 / 0,1 ptsPergunta 4
Considere uma lista encadeada implementada com vetores, na qual cada elemento
é armazenado no vetor dados e possui um ponteiro para o próximo no vetor,
conforme a seguinte estrutura:
struct lista {
 int dados[20];
 int proximos[20];
 int inicio;
}
Os elementos podem ser incluídos e removidos a qualquer momento, sobre a
manipulação de dados em listas, analise as afirmativas a seguir e selecione a
correta.
 
A lista aumenta de espaço na memória assim que novos elementos vão sendo
inseridos, não sendo possível percorrer a lista.
 
O código está incorreto. Não há como criar listas em estruturas estáticas com as
variáveis apresentadas.
 
Esta é uma estrutura de tamanho variável, e não estática, sendo assim não podemos
percorrer a estrutura.
 
A lista é composta por apenas 10 elementos, pois o vetor precisa de um índice para
dado e outro para o próximo.
 
Para remover um elemento da lista, precisamos fazer que o elemento anterior do que
será removido apontar para o elemento que o nó removido apontava.
Pontuação do teste: 0,4 de 0,4
Q05 - Questionário 05
Entrega 12 mar em 23:59 Pontos 0,4 Perguntas 4
Disponível 6 fev em 19:00 - 12 mar em 23:59 Limite de tempo Nenhum
Tentativas permitidas 2
Instruções
Este teste foi travado 12 mar em 23:59.
Histórico de tentativas
Tentativa Tempo Pontuação
MAIS RECENTE Tentativa 1 31 minutos 0,4 de 0,4
 As respostas serão mostradas após a última tentativa
Pontuação desta tentativa: 0,4 de 0,4
Enviado 21 fev em 20:06
Esta tentativa levou 31 minutos.
Instruções do Questionário!
1. Antes de responder o Questionário: Assista a videoaula e leia o capítulo correspondente do livro.
2. Abra o questionário somente quando for responder;
3. Ao abrir o questionário você terá 4 questões para responder;
4. Leia com calma todas as questões e entenda o que pede a questão: se pede a incorreta, a correta e qual o tema
da questão;
5. Lembre-se de Clicar no botão "Enviar Teste";
6. Você tem duas tentativas para fazer o teste, a segunda tentativa é opcional;
7. Lembre-se que as respostas mudam de lugar em cada tentativa;
8. As respostas corretas só aparecem após o envio da segunda tentativa;
9. O sistema considera a maior nota entre as duas tentativas;
10. Lembre-se que a segunda tentativa vai zerar TODAS as questões, inclusive as que você acertou na primeira
tentativa;
11. Caso queira ter o questionário para arquivo pessoal, basta selecionar a impressão do questionário e escolher a
opção de "salvar em PDF";
Bons estudos! 😀
 
0,1 / 0,1 ptsPergunta 1
Uma estrutura em pilha é uma das mais simples no ambiente computacional e
segue os mesmos princípios de uma pilha no mundo real, ou seja, os elementos
seguem o princípio do empilhar. As pilhas são estruturas de dados conhecidas
https://ucaead.instructure.com/courses/60906/quizzes/131028/history?version=1
como lista LIFO (Last In, First Out); em português, significa que o último elemento a
entrar é o primeiro a sair UEPS. 
Imagine que você tem a sua disposição um algoritmo que tenha implemento o
conceito de Pilha. Com base no conteúdo apresentado, qual a sequência de
comandos para que a pilha inicial obtenha o estado de pilha final?
 pilha_entrar(), pilha_entrar(), pilha_sair(21), pilha_sair(9). 
 pilha_sair(), pilha_sair(), pilha_entrar(5), pilha_entrar(10). 
 pilha_entrar(5), pilha_entrar(10), pilha_sair(), pilha_sair(). 
 pilha_sair(21), pilha_sair(9), pilha_entrar(), pilha_entrar(). 
 pilha_sair(), pilha_entrar(5), pilha_sair(), pilha_entrar(10). 
0,1 / 0,1 ptsPergunta 2
Podemos abstrair o entendimento sobre a estrutura de uma pilha como se fosse
uma pilha de livros, um em cima do outro, mas se pegarmos os mesmo livros e
colocarmos todos um a frente do outro temos uma estrutura de lista. As funções
básicas de vistas em listas como incluir elementos, remover elementos ou buscar
estão presentes nessa estrutura. O que irá diferenciar essas listas das que já vimos
até o momento é o seu modo de manutenção, pois cada uma possui uma
característica própria.
Analise as afirmações a seguir:
 
I - A estrutura de dados Fila as inserções ocorrem no final da fila e as exclusões
ocorrem no início da fila.
II - A estrutura de dados Pilha as inserções ocorrem no final da pilha e as exclusões
ocorrem no início da pilha.
III - A remoção de um item da fila é mais complexa que a remoção de um item da
pilha, pois quando removemos algum item da fila temos que reorganizar todo o
vetor.
 
É correto o que se afirma em:
 I, II e III. 
 II e III, apenas. 
 II, apenas. 
 I e II, apenas. 
 I e III, apenas. 
0,1 / 0,1 ptsPergunta 3
Árvores estritamente binárias são árvores que sempre possuem os filhos esquerdo
e direito, com exceção dos nós que são folhas. Várias aplicações importantes são
implementadas a partir de árvores estritamente binárias, como por exemplo a
resolução de cálculos aritméticos de acordo com a precedência das operações,
como ilustrado a seguir:
Assinale a alternativa referente à expressão algébrica correta que originou esta
árvore binária.
 (p - p) * (d / 100) 
 ((p - p) * d) / 100 
 (p - (p * d)) / 100 
 (p - p * d) / 100 
 p - (p * (d / 100 )) 
0,1 / 0,1 ptsPergunta 4
De maneira geral, utilizar árvores no desenvolvimento de programas é bom, pois
elas provêm rápido acesso de dados (direto e sequencial), conta com fácil inserção
e remoção de dados e ainda possuem boa taxa de utilização de memória. Nota-se
que, para poder manipular árvores convenientemente, o desenvolvedor necessita
ter em mente vários conceitos. Sobre árvores, avalie as afirmativas e assinale a
alternativa correta.
 
I – A raiz é o vértice inicial e não possui um nó pai.
II – Considereque o nó V tem uma subárvore, cujo elemento é o nó W. Diz-se que
V é pai de W.
III – Considere que o nó V tem uma subárvore, cujo elemento é o nó W. Diz-se que
W é pai de V.
IV – Considere que o nó W tem uma subárvore, cujo elemento é o nó V. Diz-se que
V é filho de W.
 I, II e IV apenas. 
 I e II apenas. 
 I, III e IV apenas. 
 I e IV apenas. 
 I e III apenas. 
Pontuação do teste: 0,4 de 0,4
Q06 - Questionário 06
Entrega 12 mar em 23:59 Pontos 0,4 Perguntas 4
Disponível 13 fev em 19:00 - 12 mar em 23:59 Limite de tempo Nenhum
Tentativas permitidas 2
Instruções
Este teste foi travado 12 mar em 23:59.
Histórico de tentativas
Tentativa Tempo Pontuação
MAIS RECENTE Tentativa 1 2 minutos 0,4 de 0,4
 As respostas serão mostradas após a última tentativa
Pontuação desta tentativa: 0,4 de 0,4
Enviado 21 fev em 20:15
Esta tentativa levou 2 minutos.
Instruções do Questionário!
1. Antes de responder o Questionário: Assista a videoaula e leia o capítulo correspondente do livro.
2. Abra o questionário somente quando for responder;
3. Ao abrir o questionário você terá 4 questões para responder;
4. Leia com calma todas as questões e entenda o que pede a questão: se pede a incorreta, a correta e qual o tema
da questão;
5. Lembre-se de Clicar no botão "Enviar Teste";
6. Você tem duas tentativas para fazer o teste, a segunda tentativa é opcional;
7. Lembre-se que as respostas mudam de lugar em cada tentativa;
8. As respostas corretas só aparecem após o envio da segunda tentativa;
9. O sistema considera a maior nota entre as duas tentativas;
10. Lembre-se que a segunda tentativa vai zerar TODAS as questões, inclusive as que você acertou na primeira
tentativa;
11. Caso queira ter o questionário para arquivo pessoal, basta selecionar a impressão do questionário e escolher a
opção de "salvar em PDF";
Bons estudos! 😀
 
0,1 / 0,1 ptsPergunta 1
O nó raiz de uma árvore binária é considerado como de nível 0. A partir dela, cada
nó possui um nível a mais do que o seu pai. A profundidade de uma árvore binária é
https://ucaead.instructure.com/courses/60906/quizzes/131020/history?version=1
dada pelo maior nível de qualquer folha na árvore. Isso equivale ao tamanho do
percurso mais distante da raiz até uma folha qualquer.
 
O que caracteriza uma árvore binária completa?
 Quando possui apenas filhos a esquerda no último nível. 
 Quando ela possui todas as folhas no último nível. 
 Quando possui apenas filhos a direito no último nível. 
 Quando ela é estritamente binária e possui no máximo 3 nós folhas. 
 Quando possui apenas três filhos a direito no último nível. 
0,1 / 0,1 ptsPergunta 2
A estrutura de uma árvore binária completa é extremamente parecida com uma
árvore estritamente binária, onde cada nó pai tem dois filhos ou o nó é uma folha.
Devemos lembrar que o nó raiz de uma árvore binária está localizado no nível 0. A
partir do nó raiz temos os nós adjacentes, onde podemos dizer que estamos
descendo na estrutura, conforme vamos descendo os níveis vão aumentando um a
um. A seguinte árvore binária completa representa uma árvore genealógica:
Assinale a alternativa correta referente ao nível de profundidade desta árvore
binária.
 Nível 2. 
 Nível 4. 
 Nível 1. 
 Nível 0. 
 Nível 3. 
0,1 / 0,1 ptsPergunta 3
A árvore binária é uma estrutura muito utilizada para organizar informações
armazenadas tanto na memória principal como na secundária. O procedimento de
busca em estrutura de árvores binária é bem simples: se elege o número a ser
buscado e inicia a verificação pelo nó raiz.
 
Assinale a alternativa correta correspondente ao processamento feito na busca
binária:
 
O processo é definido como exploração de nós, onde cada nó é removido da estrutura
para busca.
 
Ela percorre a estrutura da árvore do seu final ao seu início em busca do valor
procurado.
 
Se percorre a estrutura do seu início ao seu final em busca do valor procurado,
visitando todos os elementos.
 
É comparado o valor procurado ao elemento da raiz. Se o valor procurado for menor, o
lado direito da árvore é excluído da busca, se for maior, o lado esquerdo é excluído da
busca, este processo é repetido até chegar ao valor procurado.
 
Ela faz uso de uma fórmula especial para dividir o arranjo em duas metades iguais
para poder fazer a procura, sempre procurando em cada lado.
0,1 / 0,1 ptsPergunta 4
Com os dados armazenados em árvores podemos realizar buscas, em um elemento
dentro de uma árvore, sendo também possível montar uma árvore binária para a
busca através de elementos de a partir de um vetor, ordenado ou não ordenado.
Conforme visto em nossas aulas um vetor é possível armazenar informações em
uma única variável, guardando os dados em posições no vetor. 
Dada a seguinte árvore de busca:
Sabendo que o nó raiz de um vetor com 4 elementos é originado da posição: (0 + 3)
/ 2 = 1.5 = 1, assinale a alternativa correspondente ao vetor que originou essa
árvore.
 [ 8 3 1 7 ]. 
 [ 1 7 3 8 ]. 
 [ 7 8 3 1 ]. 
 [ 1 3 8 7 ]. 
 [ 3 8 1 7 ]. 
Pontuação do teste: 0,4 de 0,4
Q07 - Questionário 07
Entrega 12 mar em 23:59 Pontos 0,4 Perguntas 4
Disponível 20 fev em 19:00 - 12 mar em 23:59 Limite de tempo Nenhum
Tentativas permitidas 2
Instruções
Este teste foi travado 12 mar em 23:59.
Histórico de tentativas
Tentativa Tempo Pontuação
MAIS RECENTE Tentativa 1 3 minutos 0,4 de 0,4
 As respostas serão mostradas após a última tentativa
Pontuação desta tentativa: 0,4 de 0,4
Enviado 21 fev em 20:22
Esta tentativa levou 3 minutos.
Instruções do Questionário!
1. Antes de responder o Questionário: Assista a videoaula e leia o capítulo correspondente do livro.
2. Abra o questionário somente quando for responder;
3. Ao abrir o questionário você terá 4 questões para responder;
4. Leia com calma todas as questões e entenda o que pede a questão: se pede a incorreta, a correta e qual o tema
da questão;
5. Lembre-se de Clicar no botão "Enviar Teste";
6. Você tem duas tentativas para fazer o teste, a segunda tentativa é opcional;
7. Lembre-se que as respostas mudam de lugar em cada tentativa;
8. As respostas corretas só aparecem após o envio da segunda tentativa;
9. O sistema considera a maior nota entre as duas tentativas;
10. Lembre-se que a segunda tentativa vai zerar TODAS as questões, inclusive as que você acertou na primeira
tentativa;
11. Caso queira ter o questionário para arquivo pessoal, basta selecionar a impressão do questionário e escolher a
opção de "salvar em PDF";
Bons estudos! 😀
 
0,1 / 0,1 ptsPergunta 1
Algumas técnicas de busca exigem que o conjunto de dados esteja ordenado, para
que haja eficiência na procura por um elemento pertencente a esse conjunto. A
figura abaixo representa o passo a passo da ordenação de um arranjo. Com base
https://ucaead.instructure.com/courses/60906/quizzes/131027/history?version=1
na ilustração abaixo, assinale a alternativa que corresponda ao algoritmo utilizado
para ordenar o arranjo.
 O algoritmo utilizado é o InsertionSort. 
 O algoritmo utilizado é o QuickSort. 
 O algoritmo utilizado é o MergeSort. 
 O algoritmo utilizado é o ShellSort. 
 O algoritmo utilizado é o BubbleSort. 
0,1 / 0,1 ptsPergunta 2
O mecanismo de ordenação BubbleSort, conhecido também como método da
bolha, é um algoritmo de simples implementação mas de alto custo computacional,
pois compara todos os valores de dois em dois, do primeiro ao último valor, mesmo
se o vetor já estiver ordenado.
 
Devido a isto, esta técnica é indicada para um determinado grupo de dados,
assinale a alternativa correta relacionada a esse grupo.
 Vetores com pequeno número de elementos. 
 Listas encadeadas com número mediano de elementos. 
 Árvores binárias de pequeno porte. 
 Matrizes com três ou mais dimensões. 
 Vetores com grande número de elementos. 
0,1 / 0,1 ptsPergunta 3
“A lógica deste método é trocarmos os menores valores encontrados com a primeira
posição. Os elementos são sempre levados a frente do vetor, sendo trocado um a
um, Iniciandoo na primeira posição, procurando o menor valor e trocando, depois
procurando o segundo menor valor do vetor até o final, isso se repete até que a
lógica seja aplicada a cada uma das posições.”
 
A partir do contexto apresentado, qual técnica de ordenação está sendo
referenciada? Assinale a alternativa correta.
 QuickSort. 
 MergeSort. 
 BubbleSort. 
 SelectionSort. 
 InsertionSort. 
0,1 / 0,1 ptsPergunta 4
Algumas técnicas de busca exigem que o conjunto de dados esteja ordenado para
que haja eficiência na procura por um elemento pertencente a esse conjunto. A
figura abaixo representa o passo a passo da ordenação de um arranjo. Com base
na ilustração, assinale a alternativa que corresponda ao algoritmo utilizado para
ordenar o arranjo.
 O algoritmo utilizado é o BubbleSort. 
 O algoritmo utilizado é o InsertionSort. 
 O algoritmo utilizado é o MergeSort. 
 O algoritmo utilizado é o ShellSort. 
 O algoritmo utilizado é o QuickSort. 
Pontuação do teste: 0,4 de 0,4
Q08 - Questionário 08
Entrega 12 mar em 23:59 Pontos 0,2 Perguntas 2
Disponível 27 fev em 19:00 - 12 mar em 23:59 Limite de tempo Nenhum
Tentativas permitidas 2
Instruções
Este teste foi travado 12 mar em 23:59.
Histórico de tentativas
Tentativa Tempo Pontuação
MAIS RECENTE Tentativa 1 2 minutos 0,2 de 0,2
 As respostas serão mostradas após a última tentativa
Pontuação desta tentativa: 0,2 de 0,2
Enviado 6 mar em 17:08
Esta tentativa levou 2 minutos.
Instruções do Questionário!
1. Antes de responder o Questionário: Assista a videoaula e leia o capítulo correspondente do livro.
2. Abra o questionário somente quando for responder;
3. Ao abrir o questionário você terá 2 questões para responder;
4. Leia com calma todas as questões e entenda o que pede a questão: se pede a incorreta, a correta e qual o tema
da questão;
5. Lembre-se de Clicar no botão "Enviar Teste";
6. Você tem duas tentativas para fazer o teste, a segunda tentativa é opcional;
7. Lembre-se que as respostas mudam de lugar em cada tentativa;
8. As respostas corretas só aparecem após o envio da segunda tentativa;
9. O sistema considera a maior nota entre as duas tentativas;
10. Lembre-se que a segunda tentativa vai zerar TODAS as questões, inclusive as que você acertou na primeira
tentativa;
11. Caso queira ter o questionário para arquivo pessoal, basta selecionar a impressão do questionário e escolher a
opção de "salvar em PDF";
Bons estudos! 😀
 
0,1 / 0,1 ptsPergunta 1
O método de ordenação ShellSort é considerado como o mais eficiente dentro dos
algoritmos de complexidade quadrática, fazendo um uso mais refinado do método
de ordenação InsertionSort. Este método também implementa à técnica de
https://ucaead.instructure.com/courses/60906/quizzes/131029/history?version=1
subdividir o vetor em grupos menores para executar o processamento, se utilizando
de um elemento específico para determinar a quantidade de elementos dos grupos
menores.
Assinale a alternativa que apresenta o nome deste elemento.
 Elemento neutro. 
 Gap. 
 Pivô. 
 Ponto de partição. 
 Base. 
0,1 / 0,1 ptsPergunta 2
Dentre todas as técnicas de ordenação, o método MergeSort é um dos mais
conhecido, é têm um derivação do método QuickSort que aplica o conhecido de
divisão da estrutura principal em outras menores, sendo denominado como um
algoritmo que divide para conquistar. Tem como princípio que dividir um grande
problema em porções menores poderá ser mais fácil e eficiente de resolver.
 
Baseado no algoritmo aprendido na disciplina referente ao MergeSort, assinale a
alternativa correta referente ao método de programação fundamentalmente utilizado
por ele.
 Lógica funcional. 
 Polimorfismo. 
 Matriz de custos. 
 Agregação. 
 Recursividade. 
Pontuação do teste: 0,2 de 0,2
Q01 - Questionário 01
Entrega 12 mar em 23:05 Pontos 0,4 Perguntas 4
Disponível 9 jan em 19:00 - 12 mar em 23:59 Limite de tempo Nenhum
Tentativas permitidas 2
Instruções
Este teste foi travado 12 mar em 23:59.
Histórico de tentativas
Tentativa Tempo Pontuação
MAIS RECENTE Tentativa 1 2 minutos 0,4 de 0,4
 As respostas serão mostradas após a última tentativa
Pontuação desta tentativa: 0,4 de 0,4
Enviado 12 jan em 11:22
Esta tentativa levou 2 minutos.
Instruções do Questionário!
1. Antes de responder o Questionário: Assista a videoaula e leia o capítulo correspondente do livro.
2. Abra o questionário somente quando for responder;
3. Ao abrir o questionário você terá 4 questões para responder;
4. Leia com calma todas as questões e entenda o que pede a questão: se pede a incorreta, a correta e qual o tema
da questão;
5. Lembre-se de Clicar no botão "Enviar Teste";
6. Você tem duas tentativas para fazer o teste, a segunda tentativa é opcional;
7. Lembre-se que as respostas mudam de lugar em cada tentativa;
8. As respostas corretas só aparecem após o envio da segunda tentativa;
9. O sistema considera a maior nota entre as duas tentativas;
10. Lembre-se que a segunda tentativa vai zerar TODAS as questões, inclusive as que você acertou na primeira
tentativa;
11. Caso queira ter o questionário para arquivo pessoal, basta selecionar a impressão do questionário e escolher a
opção de "salvar em PDF";
Bons estudos! 😀
 
0,1 / 0,1 ptsPergunta 1
Uma variável tem um espaço na memória reservado para armazenar dados,
dependendo do tipo e da declaração esta pode armazenar tipos específicos de
https://ucaead.instructure.com/courses/60906/quizzes/131025/history?version=1
dados, vimos que podemos ter vários deles, mas os mais comuns são INT, FLOAT e
CHAR. 
Com base nos estudos da disciplina, qual é a diferença entre os tipos FLOAT e INT,
na linguagem C?
 
O tipo FLOAT é destinado para armazenar números reais, já o INT para números
inteiros.
 O tipo INT pode armazenar números reais, já o FLOAT apenas números inteiros. 
 
O tipo FLOAT pode armazenar apenas números racionais, já o INT números inteiros. 
 
O tipo INT armazena números irracionais, enquanto FLOAT somente números inteiros.
 
O tipo FLOAT pode armazenar apenas números irracionais, já o INT qualquer tipo de
número.
0,1 / 0,1 ptsPergunta 2
“A melhor maneira de se aprender uma linguagem de programação é na prática, ou
seja, codificando um programa” (KERNINGHAN; RITCHIE, 1988). Um programa em
C, ao ser elaborado, pode possuir bibliotecas básicas ou avançadas, dependendo
da complexidade no programa a ser desenvolvido pode-se ter diversas bibliotecas
importadas. 
 
Fonte: KERNIGHAN, B. W.; RITCHIE, D. M. The C Programming Language. 2nd
edition, Prentice-Hall, 1988.
 
Analise as afirmações referentes às bibliotecas Padrão de C e assinale a alternativa
correta.
 
I. Com a biblioteca assert.h, pode-se realizar o tratamento de caracteres, por
exemplo, a conversão de maiúsculas, minúsculas.
II. A biblioteca stdio.h é a responsável pelas funções de entrada/saída.
III. A biblioteca stdint.h, define os padrões de tipos de dados inteiros.
IV. Com a biblioteca math.h podemos efetuar a manipulação de funções
matemáticas
 I, II, III e IV. 
 II e III apenas. 
 I, II e III apenas. 
 I, III e IV apenas. 
 II, III e IV apenas. 
0,1 / 0,1 ptsPergunta 3
Correspondem a dois dos recursos mais utilizados em softwares e à entrada e à
saída de dados, sendo permitido o recebimento dos dados digitados pelo usuário,
armazenando-os em variáveis, posteriormente, podemos efetuar a saída de dados,
onde mostramos os dados armazenados nas variáveis na impressão da tela do
usuário.
 
Com base no exposto e nosso material de estudos, assinale a alternativa correta
para a entrada e saída de dados dos tipos int e float.
 
I. scanf("%d",&num1); printf("%d",num1);
II. scanf("%d",num1); printf("%d",num1);
III. scanf("%i",&num1); printf("%s",num1);
IV. scanf("%f",&num1); printf("%f",num1);
V. scanf("%c",&num1); printf("d",&num1);
 III e IV, apenas. 
 I e V, apenas. 
 I, II e III, apenas. 
 I e IV, apenas. 
 II e III, apenas. 
0,1 / 0,1 ptsPergunta 4
Para praticar seus novos conhecimentosem linguagem C um aluno fez um pequeno
programa. O objetivo deste programa é fazer uma divisão de dois números inteiros
e atribuir o resultado em uma variável.
 
Analise o código a seguir:
#include <stdio.h>
int main(void) {
 int A=174, B=2;
 float C;
 C = A / B;
 printf ("%d / %d = %.1f\n", A,B,C);
 return (0); 
}
 
Após analisar o código fonte, assinale a alternativa correspondente do que será
impresso na tela.
 O resultado impresso na tela será 17 / 2 = 87. 
 O resultado impresso na tela será 17 / 2 = 87.000000. 
 O resultado impresso na tela será 17 / 2 = 8.7. 
 O resultado impresso na tela será 174 / 2 = 87.0. 
 O resultado impresso na tela será 17 / 2 = 870.00. 
Pontuação do teste: 0,4 de 0,4
* Algumas perguntas ainda não avaliadas
Q02 - Questionário 02
Entrega 12 mar em 23:59 Pontos 0,4 Perguntas 4
Disponível 16 jan em 19:00 - 12 mar em 23:59 Limite de tempo Nenhum
Tentativas permitidas 2
Instruções
Este teste foi travado 12 mar em 23:59.
Histórico de tentativas
Tentativa Tempo Pontuação
MAIS RECENTE Tentativa 1 2 minutos 0,4 de 0,4 *
 As respostas serão mostradas após a última tentativa
Pontuação desta tentativa: 0,4 de 0,4 *
Enviado 19 jan em 13:45
Esta tentativa levou 2 minutos.
Instruções do Questionário!
1. Antes de responder o Questionário: Assista a videoaula e leia o capítulo correspondente do livro.
2. Abra o questionário somente quando for responder;
3. Ao abrir o questionário você terá 4 questões para responder;
4. Leia com calma todas as questões e entenda o que pede a questão: se pede a incorreta, a correta e qual o tema
da questão;
5. Lembre-se de Clicar no botão "Enviar Teste";
6. Você tem duas tentativas para fazer o teste, a segunda tentativa é opcional;
7. Lembre-se que as respostas mudam de lugar em cada tentativa;
8. As respostas corretas só aparecem após o envio da segunda tentativa;
9. O sistema considera a maior nota entre as duas tentativas;
10. Lembre-se que a segunda tentativa vai zerar TODAS as questões, inclusive as que você acertou na primeira
tentativa;
11. Caso queira ter o questionário para arquivo pessoal, basta selecionar a impressão do questionário e escolher a
opção de "salvar em PDF";
Bons estudos! 😀
 
0,1 / 0,1 ptsPergunta 1
https://ucaead.instructure.com/courses/60906/quizzes/131026/history?version=1
Segundo Forbellone e Eberspacher (2005, p.33), “uma estrutura de seleção simples
permite a escolha de um grupo de ações (bloco) a ser executado quando
determinadas condições, representadas por expressões lógicas ou relacionais, são
ou não satisfeitas”. 
Com base no exposto sobre as estruturas de seleção, análise o algoritmo a seguir:
 
#include <stdio.h>
int main() {
 int idade;
 printf("Qual a sua idade? ");
 scanf("%d", &idade);
 if(idade >= 18 && idade <=70){
 printf("Voce deve votar!");
 }else{
 if(idade <= 15){
 printf("Nao pode votar");
 }else{
 printf("Voto facultativo");
 }
 }
}
 
Podemos concluir que:
I – No código fonte apresentado, temos uma estrutura condicional composta.
II – Se o usuário digitar o número 75, a resposta será: “Não pode votar”.
III – Se o usuário digitar o número 16, a resposta será: “Voto facultativo”.
IV – Neste algoritmo, é utilizado apenas operadores lógicos, não sendo utilizado
nenhum relacional. 
 
É correto o que se afirma em:
 I e II apenas. 
 I e III apenas. 
 I e IV apenas. 
 I, II e III apenas. 
 II e III apenas. 
0,1 / 0,1 ptsPergunta 2
As estruturas de seleção se utilizam de expressões relacionais para validar o desvio
condicional, devemos atentar para o fato de que alguns desses operadores
relacionais podem ser confundidos ao serem utilizados. 
A partir do exposto e de nosso material de estudos, analise as alternativas e
assinale qual corresponde ao desvio condicional IF, comparado se a variável N é
igual ao número 0:
 if (n != 0) 
 if (n = 0) 
 if (n || 0) 
 if (n == 0) 
 if (n <> 0) 
0,1 / 0,1 ptsPergunta 3
Para repetir um determinado trecho do código podemos utilizar as estruturas de
repetição, temos dois tipos de estruturas de repetição que se utilizam de
expressões condicionais para executar ou continuar o laço de repetição, cada qual
com suas particularidades. Dentre estas estruturas temos uma que a sua
característica é executar pelo menos uma vez o laço de repetição, de qual estrutura
estamos falando?
 WHILE 
 IF 
 FOR 
 DO WHILE 
 SWITCH 
0,1 / 0,1 ptsPergunta 4
Há situações em nossos programas que precisamos repetir um determinado trecho
de código ou todo o código um determinado número de vezes. Nestes casos,
utilizaremos uma estrutura de repetição que nos permite criar um loop para efetuar
o processamento de um trecho de código quantas vezes for necessário. Na
literatura essas estruturas de repetição (loop) são, também, denominadas de laços
de repetição e malhas de repetição (MANZANO; OLIVEIRA, 1997). 
Sobre as estruturas de repetição, analise o código fonte a seguir:
 
#include <stdio.h>
int main(void){
 int i,n;
 printf("Digite um número: ");
 scanf("%d", &n);
 do{
 printf ("%d\n", ++n);
 }while (n <= 10);
 return(0);
}
 
Leia as afirmações a seguir e assinale a que está correta.
 
Se for digitado o número 7 para a variável n, aparecerão os valores 8, 9, 10, 11 na
tela.
 Se for digitado o número 10 para a variável n, aparecerá o valor 10 na tela. 
 Irá imprimir todos os números inteiros entre n e 10. 
 
Se for digitado o número maior que 10 para a variável n, não aparecerá nada na tela. 
 Irá imprimir todos os números inteiros entre (n +1) e 10. 
Pontuação do teste: 0,4 de 0,4

Continue navegando