Buscar

Gabarito Autoatividades Linguagens de Programação e Estrutura de Dados

Prévia do material em texto

dasAG
abarito
utoatividades
LINGUAGENS DE PROGRAMAÇÃO E 
ESTRUTURA DE DADOS
Prof.ª Edna da Luz Lampert
Prof. Elton Giovani Gretter
3UNIASSELVI
NEAD
GABARITO DAS AUTOATIVIDADES
L
I
N
G
U
A
G
E
N
S
 
D
E
 
P
R
O
G
R
A
M
A
Ç
Ã
O
 
E
 
E
S
T
R
U
T
U
R
A
 
D
E
 
D
A
D
O
S
GABARITO DAS AUTOATIVIDADES DE
LINGUAGENS DE PROGRAMAÇÃO E ESTRUTURA DE DADOS
UNIDADE 1
TÓPICO 1
1 Simplificando, a compilação é um processo em que o programa 
compila o recebimento de entrada de um código-fonte, produzindo 
uma saída do mesmo programa, porém escrito em outra linguagem. 
Esse processo ocorre para que o código seja compreendido 
pelo computador que recebe este código-fonte. Conforme as 
características da compilação em linguagem C é correto afirmar:
a) (x) Método chamado de implementação, baseado em compilação.
b) ( ) Processo de decodificação, resultando de um algoritmo função.
c) ( ) Portabilidade de sistemas, execução de comandos e dados móveis.
d) ( ) Execução de ciclo de vida, o código-executável possui início e fim.
2 A portabilidade da linguagem Java é uma característica muito positiva, 
possibilitando que qualquer tipo de equipamento tecnológico consiga 
conversar um com os outros, permitindo desta forma uma evolução 
para a área de tecnologia web. Esse processo de portabilidade ocorre 
através do:
a) (x) Compilador Java.
b) ( ) Código de máquina.
c) ( ) Servidor de dados.
d) ( ) Atribuição de código.
TÓPICO 2
1 A pilha de execução possui a função de incluir cada elemento ao topo 
de uma pilha, são denominadas de estruturas de dados auxiliando 
a linguagem de programação, pois todo código precisa passar pelo 
topo da pilha. Com a inclusão dos elementos no topo da pilha, por 
qual método esses elementos podem ser removidos do topo? 
4 GABARITO DAS AUTOATIVIDADES UNIASSELVI
NEAD
L
I
N
G
U
A
G
E
N
S
 
D
E
 
P
R
O
G
R
A
M
A
Ç
Ã
O
 
E
 
E
S
T
R
U
T
U
R
A
 
D
E
 
D
A
D
O
S
( ) TOP.
(x) POP.
( ) PUSH.
( ) LAST.
2 Recursividade se define por executar chamadas de uma mesma 
função, esse processo ocorre dentro do corpo de uma função 
existente e declarada, a recursividade chama novamente a própria 
função. Toda vez que uma função é chamada de forma recursiva, estas 
são armazenadas na memória do parâmetro de cada chamada, isso 
ocorre para que os valores não se percam. Na recursividade pode-se 
executar a chamada da mesma função, através de suas formas:
( ) Contínua.
(x) Indireta.
(x) Direta.
( ) Instável.
TÓPICO 3
1 Os vetores (array) são definidos por serem uma sequência de objetos 
do mesmo tipo, estes objetos são denominados de elementos do array 
e são consequentemente numerados em sequência. Uma vantagem 
muito interessante de um array é que estes podem percorrer todas 
as variáveis, utilizando a instrução loop. Os valores sequenciais dos 
arrays são denominados de:
a) (x) Valores Índices.
b) ( ) Valores Programa.
c) (x) Valores Subíndice.
d) ( ) Valores Subprograma.
2 Na alocação dinâmica são utilizados vários procedimentos para alocar 
espaço na memória de um programa, é um processo muito utilizado 
no desenvolvimento de sistemas, pois possuem como finalidade 
auxiliar no caso de problemas de estruturação de dados. Para realizar 
o procedimento de alocar espaço na memória, são utilizadas quais 
funções?
a) ( ) REALLOC() 
b) ( ) FREE()
5UNIASSELVI
NEAD
GABARITO DAS AUTOATIVIDADES
L
I
N
G
U
A
G
E
N
S
 
D
E
 
P
R
O
G
R
A
M
A
Ç
Ã
O
 
E
 
E
S
T
R
U
T
U
R
A
 
D
E
 
D
A
D
O
S
c) (x) MALLOC()
d) (x) CALLOC()
UNIDADE 2
TÓPICO 1
1 As variáveis do tipo caracteres possuem como finalidade armazenar 
letras e símbolos, estes estão acoplados dentro de um texto. As 
variáveis são do tipo inteiros e com isso armazenam os números, 
para que estes possam ser associados aos símbolos. As variáveis 
do tipo carácter possuem algumas características bem importantes, 
como realizar a atribuição de um valor para uma variável. Analise as 
sentenças a seguir e classifique V para as sentenças verdadeiras e 
F para as falsas.
( ) Utilização de caracteres '\n' e '\t'.
( ) Utilização de aspas simples ( ' ).
( ) Utilização de aspas duplas ( “ ).
( ) Utilização de caracteres '\0'.
Assinale a alternativa que apresenta a sequência correta:
a) ( ) V – V – F – F.
b) ( ) V – F – F – V.
c) (x) F – V – V – F.
d) ( ) F – F – F – F.
2 Strings são caracteres e possuem como funcionalidade representar 
os valores textuais, como, por exemplo, nome e endereços. Em uma 
linguagem de programação a string é compreendida por símbolos 
que estão codificados, e os valores de uma string devem ser escritos 
em uma sequência lógica. Uma string pode realizar operações com 
tratamentos como: pode ser escrita em ordem inversa; compara duas 
strings e retorna a junção das duas strings comparadas. Com relação 
a essas operações, classifique V para as sentenças verdadeiras e F 
para as falsas.
6 GABARITO DAS AUTOATIVIDADES UNIASSELVI
NEAD
L
I
N
G
U
A
G
E
N
S
 
D
E
 
P
R
O
G
R
A
M
A
Ç
Ã
O
 
E
 
E
S
T
R
U
T
U
R
A
 
D
E
 
D
A
D
O
S
( ) Comparação.
( ) Inversão.
( ) Concatenação.
( ) Compilação.
Assinale a alternativa que apresenta a sequência correta:
a) ( ) V – F – F – F.
b) (x) V – V – V – F.
c) ( ) V – V – F – V.
d) ( ) F – V – V – F.
TÓPICO 2
1 Estruturas de dados possuem como finalidade realizar a manipulação 
de estruturas de dados e suas aplicações, pois realizam o processo 
de organizar os dados para o desenvolvimento de uma aplicação. 
Segundo Pereira (1996), as estruturas de dados possuem dois 
objetivos principais, quais são?
a) ( ) Arranjos e Operador.
b) (x) Teórico e Prático.
c) ( ) União e Enumeração.
d) ( ) Ponteiros e Vetores.
2 Os tipos de dados definidos pelo usuário são tipos de dados 
estruturados, são construídos hierarquicamente através de 
componentes, os quais são de fato tipos de dados primitivos ou 
tipos de dados estruturados. Segundo Edelweiss e Galante (2009), 
existem dois tipos de dados estruturados. Assinale a alternativa que 
corresponde a esses dados:
a) ( ) Tipo de dados Inteiro e Definidos por Funções.
b) ( ) Tipo de dados Vetores e Definido pelo Arranjo.
c) (x) Tipo de dados Básico e Definido pelo Usuário.
d) ( ) Tipo de dado Booleano e Definido por Variáveis.
7UNIASSELVI
NEAD
GABARITO DAS AUTOATIVIDADES
L
I
N
G
U
A
G
E
N
S
 
D
E
 
P
R
O
G
R
A
M
A
Ç
Ã
O
 
E
 
E
S
T
R
U
T
U
R
A
 
D
E
 
D
A
D
O
S
TÓPICO 3
1 As matrizes são formadas por dimensões que podem ser 
chamadas de dimensional, bidimensional, tridimensional e assim, 
consequentemente, é uma estrutura de dados que necessita de 
um índice. Os vetores bidimensionais de matrizes também são 
referenciados por índices, esses referenciam:
a) (x) Linha e Coluna.
b) ( ) Vetores e Arrays.
c) ( ) Alocação e arranjo.
d) ( ) Memória e Valores.
2 A definição de tipos abstratos de dados se dá através da sua forma 
de definir para qual finalidade pode ser utilizada e como pode utilizar 
as suas operações. Suas estruturas são divididas em duas partes de 
dados e operações. O tipo de dado abstrato Ponto é formado por cinco 
operações. Analise as alternativas a seguir e assinale a CORRETA.
a) ( ) Linha, Colunas, Cria, Libera e Acessa.
b) (x) Cria, Libera, Acessa, Atribui e Distancia.
c) ( ) Atribui, Distancia, Aloca, Retorna e Liga.
d) ( ) Aloca, Retorna, Liga, Linha e Colunas.
UNIDADE 3
TÓPICO 1
1 Desenvolva um programa que possibilite a inserção de 25 valores 
do tipo inteiro aleatórios de 0 a 100 em ordem em um objeto de lista 
encadeada. Ao final o programa deverá calcular a soma dos elementos 
e a média em ponto flutuante dos elementos.
R.: Resposta pessoal do acadêmico(a).
8 GABARITO DAS AUTOATIVIDADES UNIASSELVI
NEAD
L
I
N
G
U
A
G
E
N
S
 
D
E
 
P
R
O
G
R
A
M
A
Ç
Ã
O
 
E
 
E
S
T
R
U
T
U
R
A
 
D
E
 
D
A
D
O
S
2 Desenvolva um programa que crie um objeto de lista encadeada de 
10 caracteres e depois crie um segundo objeto de lista que contém 
uma cópia da primeira lista, mas na ordem inversa, e exiba os dados 
ao usuário.
R.: Resposta pessoal do acadêmico(a).
TÓPICO 2
1Desenvolva uma função que possibilite a concatenação de duas listas 
duplamente encadeadas.
R.: Resposta pessoal do acadêmico(a).
2 Desenvolva uma função que possibilite a cópia dos dados de um 
vetor para uma lista duplamente encadeada.
R.: Resposta pessoal do acadêmico(a).
TÓPICO 3
1 Desenvolva um programa que permita a leitura de uma linha de texto e 
utilize uma pilha para imprimir as palavras da linha na ordem inversa.
R.: Resposta pessoal do acadêmico(a).
2 Uma estrutura de dados caracteriza-se como sendo um objeto do 
tipo LIFO, assim, é CORRETO afirmar que:
a) ( ) Inclusões ocorrem no final e exclusões no início.
b) ( ) Exclusões ocorrem no final e inclusões no início.
c) (x) Inclusão de novos elementos, assim como a exclusão se processa 
sempre no final do objeto.
d) ( ) Exclusões e inclusões ocorrem no início (primeiro elemento).
e) ( ) Podem ocorrer exclusões e inclusões em qualquer extremidade do objeto.
9UNIASSELVI
NEAD
GABARITO DAS AUTOATIVIDADES
L
I
N
G
U
A
G
E
N
S
 
D
E
 
P
R
O
G
R
A
M
A
Ç
Ã
O
 
E
 
E
S
T
R
U
T
U
R
A
 
D
E
 
D
A
D
O
S
TÓPICO 4
1 Considerando os seguintes dados de entrada: 08, 20, 31, 13, 28, 39, 
09, 19, 21, 11. Insira os dados de entrada numa fila. Em seguida retire 
cada dado da fila e insira numa pilha. Exiba a pilha. Depois retire os 
dados da pilha e insira na fila. Exiba a fila. Diante disso, analise as 
afirmativas abaixo identificando como as estruturas serão exibidas 
ao usuário.
I. Pilha: (topo) 11 - 21 - 19 - 09 - 39 - 28 - 13 - 31 - 20 - 08 
II. Fila: (começo) 08 - 20 - 31 - 13 - 28 - 39 - 09 - 19 - 21 - 11 (fim) 
III. Fila: (começo) 11 - 21 - 19 - 09 - 39 - 28 - 13 - 31 - 20 - 08 (fim) 
IV. Pilha: (topo) 08 - 20 - 31 - 13 - 28 - 39 - 09 - 19 - 21 - 11 
V. A fila mostrada fica com os elementos em ordem invertida dos dados de 
entrada.
Agora assinale a alternativa CORRETA:
a) ( ) III e IV.
b) ( ) II e IV.
c) ( ) I, II e III.
d) (x) I, III e V.
e) ( ) I, IV e V.
2 Considere uma estrutura de Fila composta por números inteiros 
e que possui duas operações básicas: Inserir(x) e Excluir( ). Além 
disso, a representação do estado da fila em determinado momento 
é realizada listando os elementos, de forma que o primeiro elemento, 
da esquerda para a direita, é o mais antigo presente na fila. Diante 
disso, analise a sequência de comandos abaixo, considerando que 
a lista começa vazia.
Inserir (2) > Inserir (3) > Exluir ( ) > Inserir (1) > Excluir( ) > Inserir (4) > Inserir 
(5) Excluir ( ) 
O estado final da fila será:
a) ( ) 1 2 3 4 5
b) ( ) 2 3 1 4 5
c) ( ) 3 1 4
d) (x) 4 5
e) ( ) 5

Continue navegando