Prévia do material em texto
1.
As pilhas são estruturas de dados utilizadas para diversas finalidades na computação e na programação de computadores. Suas características são adequadas para a resolução de problemas em que há a necessidade de se empilhar informações, fazer o seu processamento e depois retirá-las da pilha. Sobre as características das estruturas de dados conhecidas como pilhas, analise as afirmativas a seguir.
I- Uma das características da pilha é que os elementos são retirados na mesma ordem em que foram inseridos.
II- As pilhas possuem essencialmente duas operações básicas: empilhar e desempilhar.
III- As pilhas utilizam o princípio Last in - First out para a inserção e retirada de elementos.
IV- O nodo que realiza o controle da estrutura pilha é conhecido como CAUDA.
Assinale a alternativa CORRETA:
a)
As afirmativas I e IV estão corretas.
b)
As afirmativas II e III estão corretas.
c)
As afirmativas III e IV estão corretas.
d)
As afirmativas I e II estão corretas.
2.
Uma função é denominada recursiva quando ela é chamada novamente dentro de seu corpo. Implementações recursivas tendem a ser menos eficientes, porém facilitam a codificação e seu entendimento. Considere a função recursiva f(), apresentada na imagem a seguir, a qual foi escrita em linguagem C. Suponha que a função f() é acionada com os seguintes parâmetros de entrada:
F([2, -4, 7, 0, -1, 4}, 6);
Nesse caso, o valor de retorno da função f() será:
a)
15.
b)
13.
c)
8.
d)
10.
3.
Entender a lógica de um programa desenvolvido por outro programador, nem sempre é uma tarefa fácil, especialmente se não há uma descrição do que o programa deveria fazer. Com base no programa a seguir, caso seja informado os valores de entrada 15 e 9 e os resultados serem uma saída para o algoritmo, classifique V para as sentenças verdadeiras e F para as falsas:
program exemplo;
const
n1= 5;
n2= 3;
var
x,y:integer;
comp: boolean;
begin
writeln('Digite um multiplo de ',n1, ' e outro multiplo de ', n2, ': ');
read(x);
read(y);
comp:= x > y;
writeln(x, ' > ', y, ' = ', comp);
readln;
end.
( ) 15 > 9 = TRUE.
( ) O número 9 não é múltiplo de 5.
( ) Os números informados não atendem ao solicitado.
( ) 9 < 5 = 3.
Assinale a alternativa que apresenta a sequência CORRETA:
a)
V - V - V - V.
b)
V - F - F - F.
c)
F - V - F - V.
d)
F - F - F - V.
4.
Por intermédio de instruções específicas, nós, como programadores, estabelecemos os passos que o computador seguirá para solucionar determinado problema. Esse conjunto de instruções pode ser entendido como algoritmo. Acerca dos conceitos associados a algoritmo, como tipos de dados, variáveis e constantes, classifique V para as sentenças verdadeiras e F para as falsas:
( ) O tipo de dado lógico permite armazenar apenas valores verdadeiro ou falso.
( ) Uma constante é um local para armazenar valores definidos pelo sistema operacional.
( ) Dos quatro tipos de dados primários - inteiro, real, caractere e lógico, o número 8 se enquadra apenas em inteiro.
( ) Variáveis e constantes precisam ser declaradas no início do algoritmo.
Assinale a alternativa que apresenta a sequência CORRETA:
a)
V - V - V - F.
b)
F - V - F - F.
c)
F - F - V - V.
d)
V - F - F - V.
5.
Os aplicativos computacionais são geralmente desenvolvidos utilizando-se de linguagem de alto nível, que são amparadas por linguagens de sintaxe rigorosa, cuja característica é específica para cada linguagem adotada. Desta forma, os códigos-fonte dos programas não são entendidos pelo processador da máquina. Dois métodos se destacam neste sentido: a compilação e a interpretação. Sobre a interpretação de programas, analise as sentenças a seguir:
I- O interpretador é responsável por executar o código-fonte.
II- A interpretação do programa ocorre de forma mais onerosa (lenta) que a compilação.
III- A interpretação tem a função de transformar um programa em outro, traduzindo o código inicial para uma linguagem que possa ser executada.
IV- Um interpretador não é capaz de compilar um programa.
Assinale a alternativa CORRETA:
a)
As sentenças I, III e IV estão corretas.
b)
As sentenças I, II e III estão corretas.
c)
As sentenças II, III e IV estão corretas.
d)
As sentenças I, II e IV estão corretas.
6.
A sequência de Fibonacci é um dos problemas matemáticos que podem ser resolvidos através da utilização de funções recursivas diretas em uma linguagem de programação. A sequência de Fibonacci é composta pelos seguintes números inteiros: 1, 1, 2, 3, 5, 8, 13, 21, 34, ..., cada número seguinte é formado pela soma de seus dois antecessores. Sobre o código-fonte da figura a seguir, que gera a sequência de Fibonacci de forma recursiva, classifique V para as sentenças verdadeiras e F para as falsas:
( ) O código escrito na linha 6 trata as situações onde o valor do número na sequência é menor do que 2, e não implica recursividade na linha 7.
( ) O código escrito na linha 9 interrompe a execução do método, chamando-o novamente e enviando um valor como parâmetro.
( ) Tanto a linha 9 quanto a linha 10 fazem chamadas recursivas.
( ) A sequência de Fibonacci é um dos exemplos que só podem ser resolvidos com funções recursivas.
Assinale a alternativa que apresenta a sequência CORRETA:
a)
F - V - F - F.
b)
F - F - V - V.
c)
V - V - V - F.
d)
V - F - F - V.
7.
Um algoritmo pode ser definido como uma sequência de passos/instruções que visam atuar na solução de um problema que pode ou não ser recorrente. Embora o conceito de algoritmos pareça complexo, na verdade, o aplicamos inconscientemente muitas vezes em nosso dia a dia. Sobre os conceitos que dão sustentação aos algoritmos, classifique V para as sentenças verdadeiras e F para as falsas:
( ) Dados são valores sem significado contextual.
( ) Uma pseudolinguagem é uma linguagem intermediária que pode ser traduzida para uma linguagem de programação propriamente dita.
( ) Uma informação não possui significado contextual atrelado a um valor.
( ) A maneira como as instruções são encadeadas dentro de um programa é conhecida como lógica de programação.
( ) As linguagens de programação, em sua maioria, seguem exatamente a mesma sintaxe do portugol.
Assinale a alternativa que apresenta a sequência CORRETA:
a)
V - F - V - F - F.
b)
V - V - F - V - F.
c)
F - F - F - V - V.
d)
F - V - F - V - F.
8.
Na Ciência da Computação, uma estrutura de dados é um modo particular de armazenamento e organização de dados em um computador de modo que possam ser usados eficientemente, facilitando sua busca e modificação. Em linguagens de programação e estrutura de dados, uma das formas mais comuns de armazenamento é o registro. Sobre a estrutura de armazenamento registro, assinale a alternativa CORRETA:
a)
Estrutura que armazena somente dados inseridos em pilha.
b)
Estrutura que contém um conjunto não ordenado de campos do mesmo tipo de dados.
c)
Estrutura que contém uma ou mais variáveis de tipos de dados distintos, agrupados no mesmo nome.
d)
Estrutura de dados que armazena mais de 4000 caracteres.
9.
No modo recursivo de representação, a descrição de um conceito faz referência ao próprio conceito. São elementos fundamentais de uma definição recursiva: o caso-base (base da recursão) e a reaplicação da definição. Com relação à recursividade como paradigma de programação, analise as sentenças a seguir:
I- O uso da recursão não é possível em linguagens com estruturas para orientação a objetos.
II- As linguagens de programação funcionais têm, na recursão, seu principal elemento de repetição.
III- No que diz respeito ao poder computacional, as estruturas iterativas e recursivas são equivalentes.
IV- Estruturas iterativas e recursivas não podem ser misturadas em um mesmo programa.
Assinale a alternativa CORRETA:
a)
As sentenças II e IV estão corretas.
b)
As sentenças I e IV estão corretas.
c)
As sentenças II e III estãocorretas.
d)
As sentenças I e III estão corretas.
10.
Entre as características da linguagem de programação Java, podemos destacar a portabilidade entre plataformas, a utilização de uma máquina virtual para execução dos programas e o grande conjunto de APIs e bibliotecas, atendendo às mais variadas necessidades dos desenvolvedores. Com relação à linguagem de programação Java, analise as sentenças a seguir:
I- A JVM é responsável por criar uma espécie de sandbox, onde a execução dos programas fica praticamente isolada do sistema operacional.
II- Um programa escrito em Java pode possuir várias classes. Entretanto, o processo de compilação gerará somente um arquivo binário para representar o programa.
III- Um applet é essencialmente um programa em Java que executa através de uma página html.
IV- Um método pode ser criado sem nenhum parâmetro através dos parênteses vazios e sem nenhum retorno, através da palavra void.
Agora, assinale a alternativa CORRETA:
a)
As sentenças I, II e III estão corretas.
b)
As sentenças II e IV estão corretas.
c)
As sentenças I, III e IV estão corretas.
d)
As sentenças I e II estão corretas.