Prévia do material em texto
PARADIGMAS DE LINGUAGEM
Exercícios Resolvidos
1. Qual tipo de dados primitivo é indicado para a manipulação de informações no formato
moeda e possui precisão de duas casas decimais?
a. Inteiro
b. Ponto-Flutuante
c. Caractere
d. Decimal
e. Booleano
Resposta: Alternativa D
O tipo de dados decimal é indicado para aplicações comerciais e financeiras que manipulam
informações no formato moeda. Um exemplo de valor para este tipo é R$ 50.32 (cinqüenta
reais e trinta e dois centavos). A vantagem de utilizar este tipo de dados, é a economia de
memória para o armazenamento da parte decimal.
2. Qual das operações com o tipo de dados String permite a união de duas cadeias de
caracteres?
a. Comparação
b. Concatenação
c. Cópia
d. Ordenação
e. Organização
Resposta: Alternativa B
A operação de concatenação permite a união de duas cadeias de caracteres. Essa operação,
em geral, é realizada por meio do operador representando pelo símbolo ‘+’.
Módulo 1 - Introdução aos Paradigmas de Linguagens
1. As variáveis de um programa são responsáveis pela manipulação de informações e
representam uma abstração de um espaço na memória do computador. Os principais atributos
que definem uma variável são:
A - endereço principal e endereço virtual
B -nome, endereço, valor, tipo e escopo
C - nome simples e nome composto
D - valor público, valor privado e valor protegido
E - tipo estático, tipo dinâmico e tipo virtual
2. Qual tipo de dados primitivo é comumente utilizado para representar valores que não
possuem a parte fracionária?
A - Inteiro
B - Ponto-Flutuante
C - Decimal
D - Booleano
E – Caractere
3. Qual tipo de dados primitivo utilizado para representar valores do tipo verdadeiro ou falso?
A - Inteiro
B - Ponto-Flutuante
C - Decimal
D - Booleano
E – Caractere
4. Qual tipo de dados primitivo utilizado para representar valores que possuem uma parte
inteira e outra parte fracionária?
A - Inteiro
B - Ponto-Flutuante
C- Decimal
D -Booleano
E –Caractere
5. Considerando um tipo de dados Array, em que a indexação é iniciada na posição zero,
contendo os valores {‘A’,’B’,’C’,’D’,’E’}, qual valor esta armazenado na posição 2 do array?
A - 'A'
B - 'B'
C - 'C'
D - 'D'
E - 'E'
6. Numa comparação entre os processos de compilação e de interpretação pura de programas,
pode-se dizer que:
A
B - >um programa compilado costuma ser executado rapidamente, pois está escrito em
linguagem de máquina
C - a interpretação presta-se melhor a programas escritos em linguagens complexas, como C e
C++, pois é difícil construir um bom compilador para elas
D - o interpretador transforma o código original em um programa-fonte, o qual pode ser
executado diretamente
E - um programa compilado costuma ser executado lentamente, pois o processo de análise
sintática do programa ocorre durante a execução
7. As linguagens de programação Java, Prolog, LISP e C enquadram-se respectivamente nas
seguintes categorias:
A - orientada a objetos, funcional, lógica, imperativa
B - funcional, lógica, orientada a objetos, imperativa
C - lógica, imperativa, funcional, orientada a objetos
D - orientada a objetos, lógica, imperativa, funcional
E - orientada a objetos, lógica, funcional, imperativa
8. No projeto de software que está sob sua responsabilidade, você imagina utilizar vetores
para armazenar alguns dados numéricos. Entretanto, como o software será comercializado
livremente, você não sabe qual o tamanho ótimo desse vetor. É preciso decidir a forma de
alocação de memória mais adequada a este caso. Suponha que a linguagem de programação
adotada suporta as seguintes formas de alocação:
estática ('static'): o tamanho do vetor é conhecido previamente e a alocação de memória é
realizada antes da execução do programa
dinâmica fixa: o tamanho do vetor é conhecido previamente e a alocação de memória é
realizada durante a elaboração da declaração (durante a execução do programa)
dinâmica 'pura': o tamanho do vetor não é conhecido previamente e a alocação de memória é
realizada durante a execução do programa
Dentre as três, qual forma de alocação de memória para o vetor você escolherá?
A - estática
B - dinâmica fixa
C - qualquer uma, exceto a dinâmica pura
D - dinâmica pura
E - qualquer uma, exceto a dinâmica fixa
9.
A - por cópia (o mesmo que 'por valor'), pois é sempre a maneira mais rápida
B - por referência, pois assim se economizam tempo e memória
C - se o vetor é alocado como 'static', então a passagem é obrigatoriamente por referência;
caso contrário, deve ser por cópia
D - se o vetor é alocado como 'static', então a passagem é obrigatoriamente por cópia
E - isso é indiferente, uma vez que só serão utilizados alguns dos elementos do vetor
Módulo 2 - Expressões e Instruções de Atribuição
1. Considerando uma instrução de atribuição como resultado de uma operação condicional,
qual será o valor da variável denominada X após o trecho de código abaixo?
Y = 10;
Z = 20;
X = ((Y*20)/100) >= ((Y*Z)/200) ? 5 : 3;
a. 10
b. 20
c. 100
d. 5
e. 3
Resposta: D
Avaliando a expressão, o resultado obtido será 2 >= 1, assim, pela estrutura da instrução o
resultado atribuído a variável X será 5.
2. Considerando a linguagem de programação Java, qual das alternativas abaixo não
possui um operador de uma expressão relacional ou booleana.
a. =
b. >=
c. ||
d. <=
e. &&
Resposta: A
1.O operador igual (=) é utilizado na linguagem de programação Java como
instrução de atribuição e também pode ser utilizado como operador em uma
expressão aritmética. Considerando as regras de precedência para avaliação de uma
expressão aritimética, o que será apresentado na tela após a execução do trecho abaixo:
public static void main(String[] args) {
int a=3, b=2, c=5, d;
d = ((a*b-c)+(b*a*a+b)+(a*b-b))/c;
System.out.println("Resultado="+ d);}
A -5
B -10
C -15
D -20
E -25
2. Considerando a seguinte expressão aritmética:
X = (a*b)+(c-2)/(d%2)
Qual operador representa uma operação relativa ao módulo da divisão?
A - *
B - +
C - -
D - /
E - %
3.Sobre expressões booleanas, considere o seguinte trecho de código escrito na linguagem de
programação C#:
bool a = true;
bool b = !a;
bool c = !(a || b);
bool d = (c && b) || a;
bool e = (!a && !b) || c || d;
Console.WriteLine("a: {0}", a);
Console.WriteLine("b: {0}", b);
Console.WriteLine("c: {0}", c);
Console.WriteLine("d: {0}", d);
Console.WriteLine("e: {0}", e);
O que será exibido na tela após a execução do código?
A -True, False, False, True, True
B -True, True, False, True, True
C -True, True, False, False, True
D -False, True, False, True, True
E -True, False, False, True, False
4.O que será apresentado na tela após a execução do trecho de código abaixo? Este código foi
escrito utilizando a linguagem de programação C# e demonstra a utilização de expressões
booleanas. Na linguagem C# o tipo primitivo de dados bool representa um booleano que pode
assumir o valor verdadeiro (true) ou o valor falso (false).
bool a = false;
bool b = (!a && true);
bool c = (false && b);
bool d = (a || b || c);
bool e = (a && b && c) || d;
Console.WriteLine("a: {0}", a);
Console.WriteLine("b: {0}", b);
Console.WriteLine("c: {0}", c);Console.WriteLine("d: {0}", d);
Console.WriteLine("e: {0}", e);
O que será exibido na tela após a execução do código?
A -False, True, False, True, False
B -False, True, True, False, True
C -False, True, False, True, True
D -True, False, False, True, True
E -True, True, True, False, False
5.Sobre atribuição como resultado de uma operação condicional, considere o seguinte trecho
de código escrito na linguagem de programação C#:
int a = 10;
int b = (a >= 10)? 20: 30;
int c = (a <= b) ? 40 : 50;
int d = (a > b && a > c) ? 60 : 70;
int e = (d == (a + b)) ? 80 : 90;
Console.WriteLine("a: {0}", a);
Console.WriteLine("b: {0}", b);
Console.WriteLine("c: {0}", c);
Console.WriteLine("d: {0}", d);
Console.WriteLine("e: {0}", e);
O que será apresentado na tela após a execução do código?
A -10, 20, 40, 60, 80
B -10, 20, 50, 70, 90
C -10, 30, 40, 60, 90
D -10, 20, 40, 70, 90
E -10, 20, 50, 60, 80
Módulo 3 - Estruturas de Controle
1.No desenvolvimento de programas, as estrutura de controle possuem papel fundamental e
podem ser encontradas em quase todas os programas de computador. As estruturas de
controle permitem ao programador governar o fluxo de execução de um programa. Por meio
dessas estruturas o programador pode especificar qual o caminho de execução, ou ainda,
definir a execução repetidas vezes de um trecho do programa. Assinale a alternativa que
ilustra adequadamente qual estrutura de controle foi utilizada no trecho de código abaixo.
double x = 10;
double y = 20;
double z = 30;
x += (y*30);
y += (z*2);
for( int i = 1000; i > 0; i--){
x = x - y;
y = y - z;
z = z - x;
}
A -Laço Bidirecional
B -Laço Múltiplo
C -Laço Unidirecional
D -Laço Controlado por Contador
E -Laço Controlado por Condição Lógica
2.Nos programas de computador o fluxo de execução pode ser alterado por meio de uma
estrutura de controle conhecida como estrutura condicional. A estrutura condicional utiliza
uma expressão relacional para determinar qual caminho deve ser seguido pelo fluxo de
execução. Considerando o trecho de código abaixo, assinale a alternativa que representa
adequadamente qual estrutura condicional foi utilizada.
if ( opcao == 1 ){
...
}else if ( opcao == 2){
...
}else if ( opcao == 3){
...
}else if ( opcao == 4){
...
}else{
...
}
A -Seleção Unidirecional
B -Seleção Bidirecional
C -Seleção Aninhada
D -Seleção Múltipla
E -Seleção Condicional
3.As estruturas de seleção, também conhecidas como estruturas condicionais, possibilitam ao
programador definir se um determinado bloco de instruções (do programa ou do algoritmo)
deve, ou não, ser executado. A execução do bloco dependerá da avaliação de uma expressão
lógica, a qual sempre retornará um valor lógico que poderá ser verdadeiro ou falso. Em
linguagem algoritmica as estruturas de seleção são representadas pela instrução se, enquanto
nas linguagems de programação essas estruturas são especificadas por meio da instrução if.
Além disso, existe uma estrutura específica denominada escolha, ou switch para linguagens
como C, C++, Java e C#, que permitem a seleção mutuamente exclusiva de uma condição.
Dentro deste contexto, qual das alternativas abaixo representa adequadamente o tipo de
estrutura de seleção ilustrada no trecho de código a seguir:
int i=10,j=20,k=30;
if ( (i*j) > k ){
if ( j < k){
if ( j > i){
System.out.println(j);
}
}else{
System.out.println(k);
}
}else{
if (k*j < 100){
System.out.println(k+j);
}
}
A -seleção unidirecional (ou seleção simples)
B -seleção bidirecional (ou seleção composta)
C -seleção aninhada
D -seleção múltipla
E -seleção exclusiva
4.As estruturas de controle iterativas são utilizadas para repetir um bloco de comandos em
dois casos especiais: (i) um número pré-definido, ou determinado, de vezes e (ii) um número
indefinido, ou não determinado, de vezes. A respeito destes tipos de estruturas, considere as
seguintes afirmações:
I. Na estrutura de repetição for o número de repetições pode ser definido previamente pelo
programador;
II. Todas as estruturas de repetição possuem a condição de parada do laço no início da
instrução.
III. No passo de iteração sempre são utilizados valores inteiros maiores que zero.
A -Apenas o item I está correto
B -Apenas os itens I e II estão corretos
C -Apenas os itens I e III estão corretos
D -Apenas os itens II e III estão corretos
E -Todos os itens estão corretos
5.O trecho de código abaixo apresenta um tipo de estrutura condicional construído utilizando
a linguagem de programação C#. Dentre as estruturas condicionais existentes, escolha a
alternativa que representa corretamente o tipo de estrutura condicional utilizada no código.
double a = 2.8;
double b = 3.2;
double c = (a + b);
if (a > b)
Console.WriteLine("A maior que B");
if (a < c)
Console.WriteLine("A menor que C");
if (b > a)
Console.WriteLine("B maior que A");
if (b < c)
Console.WriteLine("B menor que A");
A -seleção unidirecional (ou seleção simples)
B -seleção bidirecional (ou seleção composta)
C -seleção aninhada
D -seleção múltipla
E -seleção exclusiva
6.Considere os três trechos de código abaixo (escritos em linguagem C) e assinale a alternativa
correta.
I - for ( i = 0; i < 10; i++ ) { if ( (i % 2) == 0 ) i++; }
II - i = 0; while ( i < 10 ) { if ( (i % 2) == 0 ) i++; }
III - i = 0; do { if ( (i % 2) == 0 ) i++; } while ( i < 10 );
A -após o término do trecho I, a variável i vale 10, enquanto os trechos II e III nunca terminam
(entram em loop infinito)
B -os três trechos produzem exatamente o mesmo resultado
C =-após o término do trecho I, a variável i vale 11; após o término do trecho II, a variável i vale
10
D -após o término do trecho I, a variável i vale 12; após o término do trecho III, a variável i vale
10
E -o trecho II nunca termina (loop infinito), enquanto que, após o término do trecho III, a
variável i vale 10
Módulo 4 - Subprogramas
1.A programação modular é um rescurso fundamental das linguagens de programação e tem
como objetivo a divisão de um programa (ou algoritmo) em pequenas partes, também
conhecidas como subprogramas. Cada linguagem de programação possui uma maneira
diferente de representar as subprogramas. Na linguagem Pascal, por exemplo, a
modularização é implementada por meio dos procedimentos (procedures) e das funções
(functions), enquanto, na linguagem Java os módulos são construídos com as especificações
das classes e também com os métodos pertencentes a essas classes. Independente da
linguagem de programação utilizada, a programação modular é baseada em uma abordagem
para resolução de problemas conhecida como dividir-para-conquistar. Dentro deste contexto,
considere as seguintes afirmações:
I. A elaboração de programas utilizando subprogramas tem como principal vantagem a
organização do código fonte, uma vez que cada subprograma possui uma função bastante
específica dentro da aplicação.
II. O processo de manutenção do código fonte é facilitado pela utilização dos subprogramas,
pois os possíveis erros da aplicação podem ser rapidamente encontrados.
III. Coma utilização dos subprogramas é possível otimizar o espaço de armazenamento em
memória, uma vez que todas as variáveis declaradas dentro dos subprogramas tem escopo
global.
A Apenas o item I está correto
B Apenas os itens I e II estão corretos
C Apenas os itens I e III estão corretos
D Apenas os itens II e III estão corretos
E Todos os itens estão corretos
2.Os programas elaborados utilizando os conceitos de programação modular possuem uma
característica interessante que é a possibilidade de passagem de parâmetros para os
subprogramas. Estes parâmetros permitem que variáveis do bloco principal do algoritmo (ou
do programa) sejam passadas para os subprogramas. Na linguagem de programação Pascal,
por exemplo, este conceito pode ser aplicado tanto para procedimentos quanto para funções.
Em linguagens orientadas a objetos, como Java e C#, este conceito pode ser aplicado para
qualquer método e até mesmo para o método construtor. Dentro deste contexto, considere as
seguintes afirmações a respeito da passagem de parâmetros para subprogramas:
I. Na passagem por valor, o valor utilizado no parâmetro do subprograma pode ser alterado
arbitrariamente uma vez que essas alterações não afetarão o programa principal.
II. Na passagem por referência, as alterações realizadas no parâmetro afetam efetivamente a
variável referenciada no programa principal.
III. O modelo semântico da passagem por valor é o modo entrada, enquanto na passagem por
referência o modo utilizado é entrada-saída.
A Apenas o item I está correto
B Apenas os itens I e II estão corretos
C Apenas os itens I e III estão corretos
D Apenas os itens II e III estão corretos
E Todos os itens estão corretos
3.Sobre a sobrecarga de subprogramas, em que é possível codificar subprogramas com o
mesmo nome, porém com o número de parâmetros e/ou tipos de dados diferentes, considere
a seguinte chamada:
calcular(2.5,7.8);
Qual subprograma sobrecarregado será disparado a partir da chamada apresentada
anteriormente.
A -int calcular(int valor1, int valor2);
B -double calcular(double valor1, double valor2);
C -string calcular(string valor1, string valor2);
D -double calcular(int valor1, int valor2);
E -string calcular(int valor1, double valor2);
4.Nos subprogramas o método de passagem de parâmetros em que são enviadas informações
do subprograma para a unidade chamadora é denominado:
A -Modo de entrada
B -Função
C -Modo de saída
D -Modo de entrada e saída
E –Procedimento
5.Nos subprogramas o método de passagem de parâmetros em que são enviadas informações
da unidade chamadora para o subprograma é denominado:
A -Modo de entrada
B -Função
C -Modo de saída
D -Modo de entrada e saída
E –Procedimento
6.Ainda nesse mesmo projeto, você precisa periodicamente ordenar vetores de três tipos de
conteúdo: números inteiros, números reais e caracteres. Para isso, você escolheu o método
denominado 'quicksort', que será implementado sob a forma de subprograma. Você está em
dúvida quanto a utilizar sobrecarga ou polimorfismo. A linguagem de programação adotada
suporta ambas as possibilidades. Após refletir, você conclui que:
A -é melhor utilizar sobrecarga, pois assim já se contrói toda a biblioteca de subprogramas de
ordenação, um para cada tipo de conteúdo do vetor
B -é melhor utilizar sobrecarga, pois assim é evitada a necessidade de saber o tipo de conteúdo
o vetor durante a compilação do código (em outras palavras, o código fica genérico)
C -é melhor utilizar polimorfismo, pois assim é evitada a necessidade de saber o tipo de
conteúdo do vetor durante a compilação do código (em outras palavras, o código fica
genérico)
D -é melhor utilizar polimorfismo, pois assim já se contrói toda a biblioteca de subprogramas
de ordenação, um para cada tipo de conteúdo do vetor
E -isso é indiferente, uma vez que sobrecarga e polimorfismo são absolutamente sinônimos
7.Quando um programa torna-se muito grande (em linhas de código), dois problemas
aparecem: a dificuldade de manter esse programa “intectualmente administrável” e o custo de
recompilação. A solução costuma ser chamada de “modularização” (para o primeiro problema)
e de “criação de unidades de compilação” (para o segundo). Em ambos os casos, está-se
utilizando o conceito de:
A -abstração de dados
B -programação estruturada
C -herança
D -encapsulamento
E -programação funcional
8-A linguagem C++ estende a linguagem C de modo a suportar a programação orientada a
objetos. Uma de suas características é a possibilidade de ocultar informação pelo uso das
cláusulas 'private', 'public' e 'protected'. Uma classe escrita em C++ possui, geralmente,
atributos e métodos que modificam esses atributos ou implementam regras de negócio da
aplicação. Uma maneira recomendável de ocultar a informação é:
A -utilizar cláusulas 'private' para os atributos e 'public' para os métodos
B -utilizar cláusulas 'private' para os métodos e 'public' para os atributos
C -utilizar cláusulas 'private' para os atributos e para os métodos
D -utilizar cláusulas 'public' para os atributos e para os métodos
E - utilizar cláusulas 'protected' para os atributos e para os métodos
Módulo 5 - Paradigma de Programação Estruturada
1.Sobre o paradigma estruturado considere as seguintes afirmações:
I. Os programas podem ser construídos utilizando apenas três estruturas essenciais:
sequencial, condicional e repetição.
II. A principal maneira de organizar os códigos fontes dos programas estruturados é utilizando
subprogramas.
III. O estado de um programa estruturado representa a situação das variáveis em um
determinado instante de tempo do fluxo de execução do programa.
Assinale a alternativa correta:
A -Apenas a alternativa I está correta.
B -Apenas as alternativas II e III estão corretas.
C -Apenas as alternativas I e II estão corretas.
D -Apenas as alternativas I e III estão corretas.
E -Todas as alternativas estão corretas.
2.Assinale a alternativa que não contém uma característica do paradigma estruturado:
A Eficiência na execução dos programas.
B Facilidade na modelagem do problema.
C Organização do código fonte em subprogramas.
D Estruturação do programa em classes.
E Manutenção simples.
3.Qual das instruções apresentadas nas alternativas abaixo não pode ser utilizada na
construção de um programa baseado no paradigma estruturado?
A -if
B -for
C -void
D -new
E –while
4.Qual das alternativas abaixo apresenta um recurso que permite ao programador realizar
mudanças abruptas do fluxo de execução dos programas, a qual não é uma característica do
paradigma estruturado.
A -Estrutura condicional
B -Estrutura de repetição
C -Estrutura sequencial
D -Modularização
E -Saltos condicionais
5.Assinale a alternativa que não contém uma linguagem de programação baseada no
paradigma estruturado.
A -Pascal
B -C
C -Smalltalk
D –Basic
E Cobol
Módulo 6 - Paradigma de Programação Orientado a Eventos
1.A principal aplicabilidade do paradigma de programação orientado a eventos é:
A -A definição dos comportamentos dentro das classes e seus respectivos objetos.
B -O tratamento das interações dos usuários nas interfaces gráficas.
C -A manipulação dos eventos atributos as variáveis dos programas.
D -O acesso das informações contidas nas classes através de eventos sincronizados.
E -A manutenção dos estados de todos os eventos ocorridos ao longo da execução do
programa.
2.Considerando os principais controles utilizados para construção de interfaces gráfica com
usuário no paradigma de programação orientado a eventos, assinale a alternativaque não
contém um tipo de controle válido:
A -Botão
B -Rótulo
C -Cor
D -Caixa de texto
E -Caixa de seleção
3.O evento do mouse que ocorre quando o ponteiro é posicionado sobre um controle é
denominado:
A -Mouse Click
B -Mouse Leave
C -Mouse Up
D -Mouse Enter
E -Mouse Hover
4.O evento do mouse que ocorre quando o ponteiro deixa o controle é denominado:
A -Mouse Click
B -Mouse Leave
C -Mouse Lost
D -Mouse Enter
E -Mouse Hover
5.O evento do teclado que ocorre quando uma tecla é pressionado enquanto o controle tem o
foco é denominado:
A -Key Up
B -Key Down
C -Key Press
D -Key Unpress
E -Key Enter
Módulo 7 - Paradigma de Programação Orientado a Objetos
1-No processo de desenvolvimento de um programa de computador, um paradigma de
programação representa a metodologia, ou filosofia adotada pelo programador durante o
processo de construção da aplicação. Cada paradigma possui suas características específicas,
as quais o programador pode explorar durante a elaboração do programa. No paradigma de
programação orientado a objetos, toda codificação do programa é organizado em classes.
Cada classe representa um conjunto de códigos intrínsecos contendo as informações
manipuladas e os seus respectivos comportamentos. Dentro deste contexto, e considerando o
paradigma de programação orientado a objetos, assinale a alternativa que não contém um
conceito fundamental deste paradigma.
A -Classes, objetos, atributos e métodos.
B -Construtores, encapsulamento, variáveis e polimorfismo.
C -Herança simples, restrições de acesso, construtor e interfaces.
D -Abstração, Herança múltipla, polimorfismo e construtor.
E -Restrições de acesso, construtores, herança simples e polimorfismo
2-A herança é um conceito muito importante da programação orientada a objetos cuja
principal característica é a reutilização de classes previamente definidas. Sobre este conceito
assinale a alternativa incorreta:
A -As classes definidas através de herança são chamadas de classes derivadas ou subclasses.
B -A classe da qual a nova é derivada é chamada de classe-pai ou superclasse.
C -A definição de classes a partir de uma única classe-pai é chamada de herança simples.
D -Herança múltipla é a definição de classes derivadas a partir de múltiplas classes-pai.
E -O controle de acesso privado (private) permite que qualquer classe derivada tenha acesso as
entidades (atributos e métodos) da classe-pai.
3.(ENADE, 2005) A orientação a objetos é uma forma abstrata de pensar em um problema
utilizando-se conceitos do mundo real e não, apenas, conceitos computacionais. Nessa
perspectiva, a adoção do paradigma orientado a objetos implica necessariamente que:
A -Os usuários utilizem aplicações de forma mais simples.
B -Os sistemas sejam encapsulados por outros sistemas.
C -Os programadores de aplicações sejam mais especializados.
D -Os objetos sejam implementados de maneira eficiente e simples
E -A computação seja acionado por troca de mensagens entre objetos.
4-Sobre paradigmas de programação, considere as seguintes afirmações:
I. No paradigma de programação estruturada os programas são organizados em estruturas
modulares denominadas subprogramas, as quais podem ser implementadas por meio de
procedimentos ou funções.
II. No paradigma de programação orientado a eventos todas as ações do programa são
especificadas por meio de eventos, os quais podem ser programados criando assim
comportamentos específicos para o programa.
III. No paradigma de programação orientado a objetos a codificação do programa é organizada
em classes, a qual representa um conjunto de códigos contendo as informações e o
comportamento do programa.
Assinale a alternativa correta:
A -Apenas o item I está correto
B -Apenas o item II está correto
C -Apenas os itens II e III estão corretos
D -Apenas os itens I e III estão corretos
E -Todos os itens estão corretos
5-A programação orientada a objeto permite a definição da visibilidade das informações
contidas na classe, para isso são utilizadas as cláusulas:
A -public, static, void e main
B -private, static, void e main
C -private, class e new
D -public, protected e private
E -protected, new e class
Módulo 8 - Paradigma de Programação Orientado a Objetos
1.João da Silva é um cientista da computação recém formado e foi contratado por uma grande
empresa de desenvolvimento de software. Como primeiro projeto na empresa ele precisou
implementar um componente de software capaz de realizar cálculos de expressões
matemáticas simples para as operações básicas (soma, subtração, multiplicação e divisão).
João optou por utilizar o paradigma de programação orientado a objetos na linguagem Java, e
o resultado foi a especificação da seguinte classe:
public class OperacoesBasicas extends Calculadora{
private int num1;
private int num2;
public OperacoesBasicas(){
this.setNum1(0);
this.setNum2(0);
}
public OperacoesBasicas(int _num1, int _num2){
this.setNum1(_num1);
this.setNum2(_num2);
}
public void setNum1(int num1) { ... }
public int getNum1(){ ... }
public void setNum2(int num2) { ... }
public int getNum2(){ ... }
public int Soma(){
return this.getNum1()+this.getNum2();
}
public int Subtracao(){ ... }
public int Multiplicacao(){ ... }
public int Divisao(){ ... }
}
Quais conceitos do paradigma orientado a objetos João da Silva utilizou na especificação da
classe?
A -composição, sobrecarga, visibilidade e herança simples.
B -sobrecarga, finalizadores, composição, encapsulamento e visibilidade.
C -herança múltipla, composição, construtores, sobrecarga e visibilidade.
D -herança simples, construtores, sobrecarga, encapsulamento e visibilidade.
E -sobrecarga, composição, herança simples, finalizadores e visibilidade.
2.Segundo Deitel & Deitel, no livro Java Como Programar, quando um objeto é criado seus
atributos podem ser inicializados por um método denominado construtor. O construtor é um
método especial, que possui exatamente o mesmo nome da classe. Este método é invocado
sempre que uma instância da classe é criada. Além disso, uma classe pode conter construtores
sobrecarregados para oferecer diversas maneiras de inicializar os objetos dessa classe. Dentro
deste contexto, considere a classe abaixo:
public class MinhaClasse{
private int valor;
private String texto;
public MinhaClasse(){
this.valor = 0;
}
public MinhaClasse(int valor){
this.valor = valor;
this.texto = "";
}
public MinhaClasse(String texto){
this.valor = 0;
this.texto = texto;
}
public MinhaClasse(int valor, String texto){
this.valor = valor;
this.texto = texto;
}
}
Qual das alternativas abaixo não representa uma maneira correta de instância da classe
denominada MinhaClasse.
A -MinhaClasse c = new MinhaClasse(20, "Exemplo de Texto");
B -MinhaClasse c = new MinhaClasse(30, null);
C -MinhaClasse c = new MinhaClasse(10);
D -MinhaClasse c = new MinhaClasse(null, "Exemplo de Texto");
E -MinhaClasse c = new MinhaClasse();
3.Nas linguagens de programação orientada a objetos, a comunicação entre os objetos é
realizada por meio de interfaces muito bem definidas, no entanto, os objetos não têm
permissão para conhecer como os outros objetos são implementados. O trecho de código
abaixo ilustra claramente este conceito, o qual é denominado:
public class MinhaClasse{private int valor;
public MinhaClasse(){
th is.valor = 0;
}
public void setValor(int valor){
this .valor = valor;
}
public int getValor(){
retur n this.valor;
}
}
A -atributo
B -método
C -construtor
D -encapsulamento
E –herança
4.O trecho de código abaixo foi especificado utilizando a linguagem de programação C# e
baseado no paradigma de programação orientado a objetos. Qual dos principais conceitos do
paradigma orientado a objeto é apresentado no trecho a seguir:
public class Pessoa{
public string Nome { get; set; }
}
public class Funcionario : Pessoa{
public int Codigo { get; set; }
public double Salario { get; set; }
}
A -Sobrecarga
B -Construtor
C -Polimorfismo
D -Herança Simples
E -Herança Múltipla
5.No paradigma orientado a objetos as classes possuem um método especial que é disparado
automaticamente no momento da instância do objeto. Dentre os métodos apresentados na
classe apresentada a seguir, qual método será executado no instante da criação do objeto:
public class Pessoa
{
private string nome;
private int idade;
public Pessoa()
{
this.nome = "";
this.idade = 0;
}
public void setNome(string nome)
{
this.nome = nome;
}
public string getNome()
{
return this.nome;
}
public void setIdade(int idade)
{
this.idade = idade;
}
public int getIdade()
{
return this.idade;
}
}
A -Pessoa
B -setNome
C -getNome
D -setIdade
E –getIdade
6-Considere as seguintes afirmações (verdadeiras), referentes a linguagens que suportam
programação orientada a objetos.
I - Programas escritos em (LP1) são compostos inteiramente de objetos e costumam ser mais
lentos que aqueles escritos em linguagens imperativas compiladas convencionais.
II - A linguagem (LP2) não permite classes sem pais isto é, existe uma classe-raiz comum a
todas as outras. Tipos primitivos básicos são suportados diretamente (não são objetos).
III - A linguagem (LP3) fornece uma variedade de controles de acesso, incluindo “funções
amigas”, além de permitir herança simples e múltipla.
As linguagens (LP1), (LP2) e (LP3) podem ser, respectivamente:
A -Java, C e C++
B -Java, C++ e SmallTalk
C -C++, C e Java
D -SmallTalk, C++ e Java
E -SmallTalk, Java e C++
Módulo Complementar I - Programação Procedural – COBOL
1-(ESAF - 2002 - PM-FORTALEZA) Sobre a linguagem COBOL, considere as seguintes
assertivas:
I. Seu projeto enfatiza características para especificar propriedades e estruturas de
arquivos, dado que foi concebida para aplicações com alto volume de entrada e saída
de dados.
II. Sua sintaxe é semelhante a da língua Inglêsa, o que torna os programas escritos em
COBOL legíveis e autodocumentos.
III. Um programa COBOL é organizado em quatro divisões: Identification division,
environment division, file division e procedure division.
IV. A procedure division implementa o algoritmo em termos dos comandos que
transformam os dados de entrada no resultado desejado.
Marque a opção com a seqüência de alternativas corretas.
A -I, II, III
B -I, II, IV
C -I, III, IV
D -II, III, IV
E -I, II, III, IV
2-(ESAF - 2002 - PM-FORTALEZA) Em um programa COBOL, uma variável será usada
para acumular salários dos funcionários cadastrais em um arquivo. O objetivo é achar
o salário médio dos funcionários de cada departamento da empresa.
Marque a opção correta quanto a declaração da variável e o seu variável e o seu tipo
na WORKING-STORAGE SECTION.
A -01 TOT-SALARIO PICTURE 9(10) V99, VALUE 0.
B -03 TOT-SALARIO PICTURE 9(10)V99, VALUE O, USAGE IS COMPUTACIONAL.
C -77 TOT-SALARIO PICTURE 9(10)V99, VALUE 0.
D -77 TOT-SALARIO PIC 9(10)V99, VALUE 0, USAGE IS COMPUTATIONAL.
E -78 TOT-SALARIO PIC 9(10)V99, VALUE 0, USAGE IS COMPUTATIONAL.
3- (ESAF - 2002 - PM-FORTALEZA) Acerca da linguagem COBOL padrão, marque a opção
correta.
A -Os subprogramas podem ter chamadas recursivas.
B -Um parágrafo, na PROCEDUREDIVISION, é uma seqüência de comandos rotulada.
C -Diferentemente da DATA DIVISION, a PROCEDURE DIVISION é organizada em
parágrafos, não possuindo o mecanismo de SECTION.
D -O comando PERFORM pode comandar a execução de uma ou mais seções na DATA
DIVISION
E -Os subprogramas podem ter chamadas imperativas.
4- (ESAF - 2008 - CGU) Um programa escrito na linguagem __________ é composto de
__________ divisões. O ________ define os arquivos a serem utilizados no programa,
a sua organização, meio de acesso, chaves primárias e/ou secundárias.
Assinale a alternativa que completa, correta e respectiva-mente, os espaços do texto
A -Cobol; quatro; Environment Division
B -Cobol; cinco; Identification Division
C -Natural 3; cinco; Environment Division
D -IBM s/360; quatro; Data Division
E -IBM s/360; cinco; Data Division
5- (CESPE - 2008 - Polícia Rodoviária Federal) A divisão de um programa escrito na
linguagem Cobol, que armazena todos os dados a serem processados ou manipula-dos
pelo programa durante o processamento é a:
A -Identification Division.
B -Data Division.
C -Enviroument Division.
D -Procedure Division.
E -Screen Division.
6- (PRODAM/2010 - Analisata de TIC I) Considere o seguinte programa escrito na linguagem
COBOL:
IDENTIFICATION DIVISION.
PROGRAM-ID. COB01.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 CONTADOR PIC 99 VALUE 1.
77 X PIC 99 VALUE 2.
77 Y PIC 99 VALUE 3.
77 RESP PIC 999.
PROCEDURE DIVISION.
100-INICIO.
PERFORM 200-ROT 5 TIMES
DISPLAY "RESP = " RESP
STOP RUN.
200-ROT.
ADD 1, X, TO Y GIVING RESP
ADD 1 TO X GIVING Y
ADD 2 TO Y GIVING X.
Após a execução do programa será enviada a mensagem:
A -RESP = 026
B -RESP = 025
C -RESP = 028
D -RESP = 027
E -RESP = 029
7- (PRODAM/2010 - Analisata de TIC I) Considere as seguintes afirmações:
I. Na linguagem COBOL, a instrução WRITE inclui uma cláusula que é usada para verificar a
existência de erros relativos a campos-chave que não estejam em seqüência ou campos-chave
que tenham valores iguais à valores já existentes em arquivos indexados. Esta cláusula é a
INVALID KEY.
II. Na linguagem COBOL, a instrução COPY traz para um programa de usuário segmentos
separados da ENVIRONMENT DIVISION, da DATA DIVISION ou da PROCEDURE DIVISION, na
forma em que se encontram. As entradas trazidas são compiladas e executadas juntamente
com o programa principal.
Pode-se afirmar que:
A -todas as afirmativas estão corretas.
B -todas as afirmativas estão incorretas.
C -apenas a afirmativa I está correta.
D -apenas a afirmativa II está correta
E -COBOL não é uma linguagem de programação.
8- (PRODAM/2010 - Analisata de TIC I) Considere o seguinte programa escrito na linguagem
COBOL:
IDENTIFICATION DIVISION.
PROGRAM-ID. COB02.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 A1 PIC X(10) VALUE "ABCDEABCDE".
01 C1 PIC 99 VALUE 00.
01 C2 PIC 99 VALUE 00.
PROCEDURE DIVISION.
100-INICIO.
PERFORM 200-ROT
DISPLAY "C1 = " C1 " C2 = " C2
STOP RUN.
200-ROT.
INSPECT A1
TALLYING C1 FOR CHARACTERS BEFORE INITIAL "DE"
C2 FOR ALL "DE".
Após a execução do programa será enviada a mensagem:
A -C1 = 02 C2 = 03
B -C1 = 04 C2 = 03
C -C1 = 03 C2 = 02
D -C1 =03 C2 = 04
E -C1 = 05 C2 = 06
Módulo Complementar II - Programação Procedural – ABAP
1- (ESAF - 2000 - TCU) A restrição de valores para um determinado campo de uma
tabela pode ser feito através do(s):
A -elementos de dados;
B -parâmetro Tables;
C -IMG - Customizing;
D -código de transação;
E -domínio.
2- (ESAF - 2000 - TCU) No comando LOOP, o comando que permite passar para o próximo
registro dentro da mesma iteração é:
A -exit
B -check
C -return
D -leave
E –continue
3- (ESAF - 2000 - TCU) Dentro de um mesmo grupo de funções foram criados dois módulos de
funções:
w_cont type Preportw_cont = 5w_cont = w_cont + 1
Após a execução do comando w_cont = w_cont + 1, o conteúdo da variável w_cont é igual a:
A -5
B -0
C -1
D -6
E -não é possível determinar o valor
4- (CESGRANRIO - 2006 - Transpetro) A seguir são feitas afirmativas sobre as vantagens de se
utilizar código Open SQL no ABAP/4.
I - Permite tratamento automático de cliente.
II - É portátil porque automaticamente é convertido em SQL nativo pelo componente de
interface de banco de dados.
III - Suporta tabelas de utilização de buffer, fazendo com que os programas que o utilizam
sejam executados mais rapidamente.
Está(ão) correta(s) a(s) afirmativa(s):
A -I, apenas.
B -II, apenas.
C -III, apenas.
D -I e II, apenas.
E -I, II e III.
5- (CESGRANRIO - 2006 - Transpetro) Uma unidade de modularização em ABAP/4 permite ao
desenvolvedor separar um grupo de linhas de código e então executá-las em um determinado
momento, funcionando de maneira muito semelhante a um miniprograma que pode ser
chamado de outro programa.
Eventos, sub-rotinas e módulos de função são três tipos de unidades de modularização
fornecidas pelo ABAP/4.
Sobre as unidades de modularização do ABAP/4, é INCORRETO afirmar que:
A -os nomes dos eventos são palavras reservadas, não sendo permitida a criação de novos
eventos.
B -as instruções exit, check e stop permitem sair de um evento em execução.
C -a instrução uses torna disponível em um programa módulos de função definidos em outro
programa.
D -se uma sub-rotina chama outra sub-rotina, variáveis definidas utilizando local na sub-rotina
que chama são visíveis de dentro da sub-rotina chamada.
E -uma sub-rotina interna pode ser chamada através da instrução perform.
6- (CESGRANRIO - 2006 - Transpetro) Em ABAP/4, o comprimento de saída de um campo
alfanumérico está definido em:
A -Domínio
B -Elemento de dados
C -Tabela
D -Estrutura
E –Categoria
7- (ELETROBRÁS - 2007 - Analista de Sistemas) O comando a seguir NÃO utilizado na linguagem
ABAP/4 é:
A -CLEAR
B -ELSE
C -LIKE
D -PERFORM
E –ARRAY
8- (ELETROBRÁS - 2007 - Analista de Sistemas) Observe o trecho de código ABAP/4 a seguir.
REPORT Z.
data: test(30) type c.
test = 'AIRPLANE'.
test = test+3(4).
write test
O resultado encontrado na variável “test” após a execução desses comandos é:
A -AIR
B -PLANE
C -PLAN
D -IRPL
E –LANE
Módulo Complementar III - Paradigma de Programação Imperativo
baseado em Script
1-(FCC - 2012 - TCE-AM) Em JavaScript, um objeto Array é usado para armazenar vários
valores em uma única variável.
Sobre a criação de objetos Array em JavaScript, considere:
I. var nomes=new Array();
nomes[0] ="Ana";
nomes[1] ="Pedro";
nomes[2] ="Jorge";
II. var nomes=new Array("Ana","Pedro","Jorge");
III. var nomes= ["Ana","Pedro","Jorge"];
IV. String nomes[3] = new String["Ana","Pedro","Jorge"];
Uma forma correta de criar um objeto Array chamado nomes que armazena o nome
de três pessoas, pode ser encontrada em :
A -I, II, III e IV.
B -I, II e III, apenas.
C -I e II, apenas.
D -III e IV, apenas.
E -I, apenas.
2-(ESAF - 2012 - CGU) Variáveis JavaScript contêm:
A -um identificador, escopo e um tipo de dados específico.
B -um contextualizador, localizador e um tipo de dados específico.
C -um identificador, parâmetro e um tipo de escopo.
D -um delimitador, escopo e um referenciador.
E -um identificador, extensão e um ponteiro.
3- (FCC - 2012 - MPE-AP) O seletor jQuery
A -$("[href!='#']") seleciona todos os elementos cujo atributo href não contenha '#'.
B -$("[href$='.jpg']") seleciona todos os elementos cuja propriedade href contenha
'.jpg'.
C -$("div#intro .head") seleciona todos os elementos com id="head" dentro de um
elemento <div> com class="intro".
D -$("p#intro:first") seleciona o primeiro elemento <p> com class="intro".
E -$("ul li:first-child") seleciona todos os elementos <li> do primeiro elemento <ul>.
4- (IFRN/2012) A linguagem “JavaScript” foi concebida para ser uma linguagem “script”
com orientação a objetos, baseada em protótipos, tipagem fraca e dinâmica e funções
de primeira classe. Seus tipos de dados suportam operações de números, booleanos e
texto. “JavaScript” trata, de maneira peculiar, desses dados. Analise o código descrito
abaixo.
<script language="javascript">
document.writeln(0/0, "<br />");
</script>
Assinale a opção que indica o valor que será retornado.
A -Undefined
B -Infinity
C -NaN
D -Null
E –Not
5- (IFRN/2012) Observe o código descrito no “JavaScript”.
var i=0;
do
{
document.write("The number is " + i);
document.write("<br />");
i++;
}
while (i<=5);
Ao final da execução do trecho do código acima, assinale a opção que corresponde ao
valor da variável "i".
A -6
B -5
C -4
D -0
E -1
6-(IFRN/2012) Em “JavaScript”, eventos são fatos que ocorrem durante a execução dos
sistemas, a partir dos quais o programa pode definir ações a serem realizadas pelo
programa. Assinale a opção que menciona o evento que ocorre na carga do
documento, ou seja, no BODY.
A -Onload
B -Onblur
C -Onunload
D -Onfocus
E –Onclick
7- (PaqTcPB - 2012) As tags XML que delimitam um código Javascript são:
A -<script> e o </script>
B -<javascript> e o </javascript>
C -<java> e o </java>
D -<css> e o </css>
E -<codescript> e o </codescript>
8-(FCC - 2012 - TRE-SP) Muitas vezes quando um campo perde o foco é necessário
verificar alguma validação em seu conteúdo por meio de scripts JavaScript. O atributo
de uma tag <input> que permite chamar um script JavaScript que será executado
quando o campo perder o foco é o
A -onblur
B -onkeyup
C -onchange
D -onlostfocus
E –onmouseout
Módulo Complementar IV - Paradigma de Programação Imperativo para
Web – PHP
1-FCC - 2003 - TRF 5ª - Analista Judiciário) Os arquivos enviados para um servidor, a
partir de páginas PHP, geralmente são armazenados no diretório temporário ou no
caminho apontado pela
A -variável de ambiente TMPDIR.
B -função receive .
C -função send .
D -variável global.
E -variável enviada pelo navegador.
2-(FCC - 2003 - TRE-AM - Técnico Judiciário) No trecho de código PHP
if (cond1){if (cond2) {comando2}} else {comando3}
A -comando2 será executado se e somente se cond1 for falsa.
B -comando2 será executado se e somente se cond1 for verdadeira e cond2 for falsa.
C -comando3 será executado se e somente se cond1 for falsa.
D -comando3 será executado se e somente se cond2 for falsa.
E -comando3 será executado se e somente se cond1 for verdadeira e cond2 for falsa.
3- (CESPE - 2002 - TCE-DF - Auditor) Na programação com a linguagem PHP 4 pode-se
usar funções pré-definidas para identificar o tipo de uma variável passada como
argumento. Com relação a essas funçõesé incorreto afirmar que a função
A -is_array(argumento) retorna um valor verdadeiro se "argumento" for um array .
B -is_real(argumento) retorna um valor verdadeiro se "argumento" for um número de
dupla precisão.
C -is_fl oat(argumento) retorna um valor verdadeiro se "argumento" for um número
de dupla precisão.
D -is_long(argumento) retorna um valor verdadeiro se "argumento" for um Inteiro.
E -gettype(argumento) retorna um número inteiro, no intervalo de 0 a 5, que
representa um dos seis possíveis tipos de "argumento".
4-(CESPE - 2002 - TCE-DF - Auditor) Analise as seguintes afirmações relacionadas a
Algoritmos com o uso da linguagem de programação PHP.
I. A condição padrão para se sair de um loop é a condição principal do teste se tornar
falsa. Utilizando-se os comandos especiais break ou continue pode-se implementar
uma saída opcional. O break encerra o loop mais interno que o contém e o continue
pula para o fim da repetição atual do loop mais interno que o contém.
II. A construção do instrução while (condição); realiza incondicionalmente a instrução
uma vez e continua repetindo a instrução até que a condição se torne falsa.
III. O uso da construção die(string_argumento) em um script envia a mensagem
representada por string_argumento para a saída e continua a execução do script
pulando a linha seguinte à qual se encontra a construção die().
IV. O uso da construção exit(string_argumento) analisa o conteúdo de
string_argumento, envia o resultado da análise para saída e encerra o script.
Indique a opção que contenha todas as afirmações verdadeiras.
A -I e II
B - I e II
C -III e IV
D -I e III
E -II e IV
5-(ESMAFESC - 2001 - TRF 4ª - Juiz Federal) Considere o fragmento de código abaixo.
$s = "Cesgranrio";
echo ($s);
$c = mysql_connect("servidor", "user", "senha")
or die ("Erro.");
$db = mysql_select_db("funcionarios")
or die ("Erro.");
Que linguagem de programação é utilizada nesse código?
A -JAVA
B -C
C -VBScript
D -PHP
E –Delphi
6- (TRT 7ª - 1999 - TRT 7ª - Juiz do Trabalho) Em relação à linguagem PHP, é correto
afirmar:
A -O PHP pode ser escrito dentro da própria página web, junto ao código HTML, desde
que se especifique quais são as partes constituintes do código escritas nesta
linguagem.
B -A sintaxe dos códigos PHP é única, o que permite que o servidor interprete e
execute as páginas, sem a necessidade de labels e etiquetas para esses códigos.
C -Em PHP as sentenças são iniciadas com " t; " e terminadas com " > ", não sendo
necessário o terminal " > " na última sentença.
D -Comentários de apenas uma linha são precedidos por " /* " e comentários
multilinhas são precedidos por " // ".
E -Embora textos introduzidos em forma de comentário sejam compilados e
linkeditados pelo servidor, não têm efeito algum sobre o código do PHP.
7-(FCC - 2004 - TRF 4ª - Analista Judiciário) Dadas as strings PHP:
$x=50;
$y="x é igual a $x";
o conteúdo da $x será:
A -50
B -igual a $y
C -"x é igual a 50"
D -"x é igual a $x"
E -"x é igual a $y"
8-(ESAF - 2004 - MPU - Analista) O conteúdo original de Sx, antes de ser incrementado,
será copiado para Sv. Tal operação PHP é o resultado da expressão:
A -Sx = Sv
B -Sv = ++Sx
C -Sx = Sv++
D -Sx = ++Sv
E -Sv = Sx++
Módulo Complementar V - Paradigma de Programação Imperativo para
Web – JSP
1-(FCC - 2012 - TST) Páginas JavaServer Pages são páginas web
A -que permitem combinar códigos Java, HTML estático, CSS, XML e JavaScript.
B -escritas em Java, sem código HTML.
C -interpretadas e não compiladas.
D -transformadas em bytecode e executadas no cliente.
E -combinadas com servlets no desenvolvimento exclusivo de páginas estáticas.
2-(FUMARC - 2012 - TJ-MG) Analise as seguintes afirmativas sobre tecnologias para
aplicações Web baseadas em Java.
I. JSP permite a criação de páginas Web com conteúdo estático e dinâmico.
II. EJb é um framework de componentes, baseado na arquitetura MVC, para
construção de interfaces com usuário.
III. JSTL permite utilizar conjuntos padronizados de tags para manipulação de arquivos
XML, internacionalização, dentre
outros.
Assinale a alternativa CORRETA:
A -A afirmativa III está errada e as afirmativas I, II estão corretas.
B -A afirmativa II está errada e as afirmativas I, III estão corretas.
C -A afirmativa I está errada e as afirmativas II, III estão corretas.
D -As afirmativas I, II e III estão corretas.
E -As afirmativas I, II e III estão incorretas.
4- (FCC - 2012 - MPE-PE - Analista Ministerial) Em uma aplicação web Java que utiliza
JSP, as linhas de código comuns a diversas páginas podem ser criadas em um arquivo I ,
que pode ser incluído nas páginas utilizando-se a diretiva II .
As lacunas I e II são preenchidas correta e respectivamente por
A -I. Javascript,
II. <%@page file="caminho/nome_do_arquivo"%>.
B -I. Java Servlet,
II. <%@include uri="caminho/nome_do_arquivo"%>.
C -I. JSTL,
II. <%@taglib uri="caminho/nome_do_arquivo"%>.
D -I. JSF
II. <%@page import="caminho/nome_do_arquivo%>.
E -I. JSPF
II. <%@include file="caminho/nome_do_arquivo"%>.
5-(FCC - 2012 - MPE-PE - Analista Ministerial) Em uma aplicação Java web desenvolvida
em três camadas utilizando o design pattern MVC, é correto afirmar que:
A -As páginas HTML são representadas no componente Controller.
B -As servlets normalmente são representadas no componente View.
C -As classes que possuem atributos referentes aos campos das tabelas do banco de
dados são representadas no componente Controller.
D -As classes DAO (que acessam o banco de dados) são representadas no componente
Model.
E -Páginas JSP são representadas no componente Model.
6- (FCC - 2012 - TRE-SP - Técnico Judiciário - Programação de Sistemas) As tags
utilizadas em uma página JSP para importar classes de um pacote, habilitar o uso de
bibliotecas de classes (por exemplo, JSTL) e incluir arquivos (por exemplo, JSP
Fragments) são conhecidas como tags
A -diretivas
B -de scriptlet
C -de declaração
D -de expressão
E -standard action
7-(FCC - 2012 - TRE-CE - Analista Judiciário - Análise de Sistemas) <%@ page
atributo1="valor1" atributo2="valor2"... %> é a sintaxe típica da diretiva Page, em JSP.
Um de seus atributos, se definido para true, indica o processamento normal do servlet
quando múltiplas requisições podem ser acessadas simultaneamente na mesma
instância de servlet. Trata-se do atributo
A -Extends
B -Import
C -isThreadSafe
D -Session
E –AutoFlush
8- (CESGRANRIO - 2011 - FINEP - Analista - Desenvolvimento de Sistemas) Qual ação
padrão do JSP interrompe o processamento das requisições pela página corrente e as
direciona para outro componente Web?
A -<jsp:invoke>
B -<jsp:include>
C -<jsp:forward>
D -<jsp:plugin>
E -<jsp:call>
Módulo Complementar VI - Paradigma de Programação Imperativo para
Web - ASP
1-(VUNESP - 2010 - CEAGESP - Analista de Sistemas - Desenvolvimento de Aplicações)
No processo de criação de páginas por meio da linguagem de programação ASP.NET, a
diretiva utilizada para indicar se a página é do tipo MASTER é a
A -#Master
B -%Master
C -@ Master
D -Type=master
E -Page.type{master}
2-(FCC - 2012 - TRF - 2ª REGIÃO - Técnico Judiciário - Informática) No ASP .NET um
formulário Web não deve usar variáveis de instância para guardar informações de
estado do cliente, pois os clientes que acessam esse formulário Web em paralelo
poderão sobrescrever as variáveis de instância compartilhadas. Para resolveresse
problema, os formulários Web devem guardar as informações de estado do cliente em
objetos
A -HttpResponse
B -HttpSessionState
C -HttpRequestState
D -HttpCookie
E –HttpSessionStore
3-(VUNESP - 2011 - TJM-SP - Analista de Sistemas - Judiciário) Na línguagem de
programação ASP.NET, a propriedade que contém os controles de vinculação de dados
e que não deve ser utilizada diretamente no código, sendo um controle nativo é:
A -BindingContainer
B -ADOContainer
C -DataContainer
D -DataInput
E –DataSet
4-(VUNESP - 2011 - TJM-SP - Analista de Sistemas - Judiciário) Na linguagem de
programação ASP.NET, o controle AdRotator é utilizado para apresentar uma
sequência de imagens, porém, para funcionar corretamente, deve ser utilizado um
arquivo XML com a seguinte particularidade:
A -o bloco de imagens deve começar e terminar com a tag <Ad>.
B -o bloco de imagens deve começar e terminar com a tag <Advertisements>.
C -o arquivo XML deve ser instanciado no arquivo Global.asax.
D -o arquivo XML, obrigatoriamente, deve estar contido no mesmo diretório das
imagens.
E -nenhum outro arquivo,exceto as imagens indicadas pelo arquivo XML, deve estar
presente no mesmo diretório.
5-(ESAF - 2008 - Prefeitura de Natal - RN - Auditor do Tesouro Municipal - Tecnologia
da Informação - Prova 2) Quanto à estrutura, propriedades e sintaxe da linguagem de
programação ASP, é correto a?rmar que
A -quando um formulário é submetido, os campos no formulário podem ser
submetidos usando os métodos Get ou Post. A coleção Form é utilizada pelo método
Get e a coleção QueryString pelo método Post.
B -ao se criar um cookie na máquina do visitante usando a coleção Cookies do objeto
Response e executar o comando “Response.Cookies (“Nome_do_Cookies”)”, um
espelho do Cookie é criado no servidor IIS com o nome “Nome_do_Cookie”.
C -as propriedades do objeto Response permitem que se controle como os dados são
enviados para o navegador do visitante. A propriedade Booleana “Expires” retorna se
o cliente ainda está conectado ao site.
D -utilizando-se a coleção ClientCerti? cate do objeto Request, pode-se solicitar os
valores do certi? cado do visitante.
E -a propriedade CacheControl é uma propriedade Booleana que determina se a saída
do ASP é enviada quando ele é executado ou é armazenado até todo o código estar
completo. O uso da propriedade CacheControl deve ser feito antes que qualquer
informação seja escrita para o navegador.
6-(FCC - 2008 - METRÔ-SP - Analista Treinee - Ciências da Computação) No que
concerne às linguagens de programação, analise:
I. A linguagem de programação C++ não oferece herança múltipla, somente herança
simples. Java suporta herança simples, mas a partir de uma classe virtual chamada
interface, constitui uma versão da herança múltipla.
II. Existem várias versões de PHP, sendo que o suporte para acesso a banco de dados
com o uso de cláusulas SQL está disponível apenas nas versões posteriores à PHP 3.
III. Métodos de passagem de parâmetros permitem que parâmetros sejam
transmitidos entre o programa principal e os subprogramas. Nesse sentido, o método
de passagem de parâmetros por valor é a técnica na qual são passadas cópias dos
parâ-metros envolvidos, isto é, ao passar uma variável como parâmetro de um
método, sempre será efetuada a cópia dos bits desta variável.
IV. ASP e PHP foram projetadas para serem embutidas em páginas HTML, não podendo
ser usadas independentemente para a geração de programas executáveis autônomos.
É correto o que consta em
A -I e III, apenas.
B -II e III, apenas.
C -I, II e III, apenas.
D -I, III e IV, apenas.
E -I, II, III e IV
7- (UFF - 2009 - UFF - Analista de Tecnologia da Informação) Na linguagem ASP, um
arquivo ASP normalmente contém tags em HTML, mas também possui scripts de
servidor delimitados por um símbolo (caracter). Esse símbolo (caracter) é conhecido
como:
A -%
B -?
C -&
D -/
E -#
8-(CEPERJ - 2012 - PROCON-RJ - Técnico em Informática) ASP tem por signi? cado
Active Server Pages e é uma tecnologia criada pela Microsoft, que combina HTML,
comandos script e componentes ActiveX, para criar páginas web com conteúdo
dinâmico. Emprega diversos objetos e um deles fornece acesso às informações
passadas na solicitação do browser ao servidor. Esse objeto é denominado:
A -Application
B -Request
C -Session
D -Query
E –Folder
Módulo Complementar VII - Paradigma de Programação Declarativa
1-(CONSULPLAN - 2012 - TSE - Analista Judiciário - Análise de Sistemas) Ao contrário
das linguagens tradicionais, que são procedimentais, SQL é uma linguagem
declarativa, que integra três sublinguagens: Data Manipulation Language (DML), Data
Definition Language (DDL) e Data Control Language (DCL). Um comando DML e outro
DDL são, respectivamente,
A -Drop e Grant.
B -rant e Delete.
C -Delete e Update.
D -Update e Drop.
E -Select e Drop.
2-(FCC - 2012 - TRE-SP - Técnico Judiciário - Programação de Sistemas) Com relação à
linguagem SQL é correto afirmar:
A -Diferentemente de outras linguagens, considera os valores nulo, zero ou um espaço
vazio em branco a mesma coisa.
B -Considerando a existência de uma tabela chamada EMPLOYEE com um campo chave
primária chamado ID, a instrução
DELETE * FROM EMPLOYEE WHERE ID = 125 está correta.
C -A DML permite criar a estrutura (os metadados) de um banco de dados. Já a DDL
permite manipular os dados contidos no banco de dados.
D -São instruções DDL: CREATE DATABASE, CREATE TABLE, ALTER TABLE, CREATE
INDEX, UPDATE, DROP INDEX e DROP TABLE.
E -Constraints são definidas para evitar que valores incorretos ou inválidos sejam
inseridos. Algumas das principais constraints são: NOT NULL, PRIMARY KEY e CHECK.
3-(FCC - 2012 - TRE-SP - Técnico Judiciário - Programação de Sistemas) Considere o
procedimento PL/SQL abaixo:
DBMS_REPCAT.ADD_GROUPED_COLUMN (
sname IN VARCHAR2,
oname IN VARCHAR2,
column_group IN VARCHAR2,
list_of_column_names IN VARCHAR2 | DBMS_REPCAT.VARCHAR2s);
Em relação ao parâmetro list_of_column_names é INCORRETO afirmar que
A -list_of_column_names pode conter uma lista delimitada por vírgula ou um índice de
tabela PL/SQL de nomes de coluna.
B -é possível especificar objetos de coluna, bem como, os atributos de objetos da
coluna.
C -se a tabela é um objeto, então é possível especificar $ SYS_NC_OID para adicionar a
coluna identificadora de objeto no grupo de coluna.
D -em se tratando de uma tabela aninhada, é possível especificar NESTED_TABLE_ID
para adicionar a coluna que acompanha o identificador para cada linha da tabela
aninhada.
E -o índice de tabela PL/SQL de nomes de coluna deve ser do tipo
DBMS_REPCAT.VARCHAR2.
4-(FCC - 2012 - TRT - 6ª Região (PE) - Analista Judiciário - Tecnologia da Informação)
Considere os seguintes comandos em PL/SQL:
CREATE TABLE VALORES (ID INT NOT NULL PRIMARY KEY,VALOR INT);
INSERT INTO VALORES VALUES (1,5);
INSERT INTO VALORES VALUES (1,6);
INSERT INTO VALORES VALUES (NULL,7);
INSERT INTO VALORES VALUES (2,1);
INSERT INTO VALORES VALUES (2,8);
INSERT INTO VALORES VALUES (3,9);
INSERT INTO VALORES VALUES (NULL,10);
SELECT COUNT(VALOR) FROM VALORES WHERE VALOR >= 5;
A consulta retornará o valor
A -2
B -14
C -6
D -29
E -5
5-(FCC - 2012 - TRT - 6ª Região (PE) - Analista Judiciário - Tecnologia da Informação)
Predicados são elementos da linguagem SQL que especificam condições que podem
ser avaliadas como "True", "False" ou "Null", no que é conhecido como lógicatrivalente. Na lógica trivalente usada pela linguagem SQL tem-se
A -True AND False = Null.
B -True OR False = Null.
C -NOT Null = True.
D -True AND False = False.
E -Null AND False = False.
6-(FCC - 2012 - TRT - 6ª Região (PE) - Técnico Judiciário - Tecnologia da Informação)
Para que o método opera execute a operação desejada na chamada ao método
executeQuery é necessário que ele receba como parâmetro uma instrução DML SQL
A -insert, update ou delete, apenas.
B -insert, update, delete ou select.
C -update, apenas.
D -select, apenas.
E -update ou select, apenas
7-(FUNIVERSA - 2012 - PC-DF - Perito Criminal - Informática) A linguagem de definição
e manipulação de dados SQL (Structured Query Language) é um padrão para os
bancos de dados relacionais. A expressão SQL “select f.nome, d.sigla from funcionario
as f inner join departamento as d on f.coddept = d.codigo” retorna o nome do
funcionário e a sigla do departamento
A -para todos os funcionários e, caso o código do departamento não exista na tabela
departamento, retorna NULL no campo sigla.
B -para todos os funcionários e, caso o código do departamento não exista na tabela
departamento, retorna um erro na linha.
C -de todos os registros das tabelas funcionário e departamento, retornando NULL no
campo nome, caso não exista um funcionário de certo departamento, e NULL no
campo sigla, caso não exista o departamento para determinado funcionário.
D -apenas para os funcionários cujo código do departamento conste na tabela de
departamento.
E -em um produto cartesiano das tabelas funcionário e departamento, filtrando pelo
código do departamento.
8-(ESAF - 2012 - CGU - Analista de Finanças e Controle) A Linguagem de De?nição de
Dados de uma SQL permite especi?car:
A -O esquema para cada estrutura. As restrições de normalização. O conjunto dos
índices a serem mantidos para cada relação. As informações de acesso e ?exibilidade
para cada relação.
B -O domínio dos valores gerados por cada atributo. As restrições de integridade. O
conjunto dos coe?cientes a serem mantidos nas relações de objetos. A estrutura de
armazenamento físico de cada relação na estrutura de relacionamentos.
C -O esquema para cada relação. O domínio dos valores das relações. As permissões de
integridade. O conjunto dos índices a serem extraídos de cada relação.
D -O esquema para cada relação. As informações de segurança e autorização para cada
relação. A estrutura de armazenamento físico de cada relação no disco.
E -As restrições de interatividade. As variáveis e índices a serem mantidos para cada
relação. As informações de segurança e automação para cada relação. A estrutura de
armazenamento físico de cada relação no disco.
Módulo Complementar VIII - Paradigma de Programação Distribuída
1-(FCC - 2008 - METRÔ-SP - Analista Treinee - Ciências da Computação) Um Web
Service é uma aplicação lógica, programável, acessível, que usa os protocolos-padrão
da Internet, para que se torne possível a comunicação transparente I. Isso significa
dizer que se pode acessar qualquer Web Service disponível na Web e utilizar todas as
suas funcionalidades. Outra vantagem é que ele é transparente para o Firewall de uma
empresa, pois, internamente existe II que é III.
Preenchem correta e respectivamente as lacunas I, II e III acima:
A -máquina-para-máquina e aplicação-para-aplicação; uma string XML que está
empacotada em um protocolo SOAP; interpretada como um arquivo "texto".
B -homem-para-máquina e aplicação-para-aplicação; um endereço de porta especial,
que está empacotado em um protocolo SOAP; reconhecido pelo Firewall.
C
máquina-para-máquina e aplicação-para-aplicação; um endereço de porta especial,
que está empacotado em um protocolo SOAP; reconhecido pelo Firewall.
D
homem-para-máquina e aplicação-para-aplicação; uma string XML que está
empacotada em um protocolo SOAP; interpretada como um arquivo "texto".
E
homem-para-máquina e aplicação-para-aplicação; uma codificação WSDL, empacotada
em um protocolo HTTP; validada pelo Firewall.
2- (FCC - 2008 - METRÔ-SP - Analista Treinee - Ciências da Computação) Sobre a SOA −
Service-oriented architecture, considere:
I. A SOA fornece, essencialmente, uma estrutura na qual a lógica do aplicativo pode
ser decomposta em pedaços ou serviços que podem ser reutilizados e modificados e
aplicados em diferentes áreas dentro e fora da empresa sem ajustar a tecnologia
subjacente, otimizando, dessa forma, o compartilhamento e reutilização dos
componentes de TI.
II. Ao contrário das Web Services, na SOA, duas áreas diferentes, com aplicativos e
dados diferentes, e possivelmente sistemas operacionais ainda mais diferentes, podem
compartilhar o serviço sem uma grande quantidade de codificações customizadas
para fazê-lo funcionar.
III. Utilizando a SOA, uma empresa pode construir sistemas de TI flexíveis, com
serviços fortemente acoplados que podem ser compartilhados, modificados e
permutados sem enfrentar dificuldades com a customização de tecnologias
subjacentes, mesmo levando em conta a existência de grande quantidade de linhas de
códigos da linguagem WSDL.
IV. Na SOA, um serviço pode ser definido como uma função independente que aceita
uma ou mais requisições e devolve uma ou mais respostas através de uma interface
padronizada e bem definida. Serviços podem também realizar partes discretas de um
processo, tal como editar ou processar uma transação, e não devem depender do
estado de outras funções ou processos.
É correto o que consta APENAS em
A -II e III.
B -I e IV.
C -I e III.
D -I, II e III.
E -II, III e IV.
3- (CONSULPLAN - 2012 - TSE - Analista Judiciário - Análise de Sistemas)
Conceitualmente, SOA e Web services representam, respectivamente,
A -estratégia de TI que emprega metodologia de programação orientada a objetos /
conjunto de ferramentas Case para desenvolvimento Web.
B -estratégia de TI que emprega metodologia de programação orientada a serviços /
conjunto de ferramentas Case para desenvolvimento Web.
C -estratégia de TI que emprega metodologia de programação orientada a objetos /
conjunto de mecanismos padronizados de comunicação sobre a World Wide Web.
D -estratégia de TI que emprega metodologia de programação orientada a serviços /
conjunto de mecanismos padronizados de comunicação sobre a World Wide Web.
E -estratégia de TI que emprega metodologia de programação orientada a eventos/
conjunto de ferramentas estatísticas para desenvolvimento Web.
4- (FCC - 2012 - TRE-SP - Técnico Judiciário - Programação de Sistemas) O formato XML
utilizado para descrever os serviços de Web services, especificando como acessá-los, e
quais as operações ou métodos que estão disponíveis, é chamado de
A -XML-RPC
B -XHTML
C -SOAP
D -HTTP
E –WSDL
5-(FCC - 2012 - TRT - 6ª Região (PE) - Analista Judiciário - Tecnologia da Informação)
Segundo o Web Services for Remote Portlets Specification v2.0 (WSRP), em um fluxo
típico de interação entre os atores, a fase que deve ocorrer primeiro, na ordem
cronológica, é aquela em que
A -se estabelece uma relação entre o consumidor e o usuário final.
B -o consumidor aprende as capacidades totais e serviços do produtor.
C -se estabelece a relação entre o consumidor e o produtor.
D -páginas agregadas são produzidas pelo produtor.
E -uma página é requisitada pelo consumidor.
6-(FCC - 2012 - TRT - 6ª Região (PE) - Técnico Judiciário - Tecnologia da Informação) A
Empresa Brasileira de Correios e Telégrafos oferece o seguinte serviço em seu site:
Aplicativo para cálculode prazos e preços de encomendas em lojas virtuais e sites. O
aplicativo de cálculo remoto de preços e prazos de encomendas dos Correios é
destinado aos clientes SEDEX, e-SEDEX e PAC que necessitam calcular o preço e o
prazo de entrega de uma encomenda em seus websites, de forma personalizada Os
clientes que não possuem contrato de encomenda com os Correios podem usar esta
ferramenta, porém os preços apresentados serão os praticados no balcão da agência.
(http://www.correios.com.br)
Este aplicativo é um
A -Webservice
B -Website
C -Jogo virtual
D -Serviço de atendimento online (chat)
E -Serviço de Atendimento ao Consumidor (SAC)
7-(CESPE - 2013 - TRE-MS - Analista Judiciário - Análise de Sistemas) No que se refere a
SOA e webservices, assinale a opção correta.
A -O WS-Security propõe uma série de extensões para aprimorar a segurança dos web
services no UDDI e no WSDL. Por questão de compatibilidade, essas extensões não
afetam os cabeçalhos do envelope SOAP.
B -UDDI é um serviço de diretório em que é possível registrar e localizar web services.
C -WSDL é descrito em formato XML e tem por única função descrever os valores e
formatos dos dados que serão intercambiados entre os sistemas.
D -SOAP é um protocolo do tipo statefull, independente de sistema operacional,
embasado em troca de mensagem one-way e projetado para ser simples e extensível
por meio de tecnologia XML.
E -SOA é uma arquitetura de desenvolvimento cujo objetivo é criar módulos funcionais
denominados serviços, fortemente acoplados e independentes de plataforma. É
embasada em XML e incentiva reutilização de código e interoperabilidades entre
sistemas.
8- (CONSULPLAN - 2012 - TSE - Analista Judiciário - Análise de Sistemas) Web Services
fornece um meio padrão de interoperabilidade entre diferentes aplicações de
software, executando em uma variedade de plataformas e/ou frameworks. Tem como
um dos objetivos prover a conversão das aplicações na versão Web. A comunicação é
realizada por meio de protocolos abertos. Por padrão, Web Services estabelece
uma linguagem projetada para transportar e armazenar dados, com foco direcionado
para a essência do dado.
um protocolo que permite aos aplicativos trocarem informações sobre HTTP.
A linguagem e o protocolo são, respectivamente,
A -XSL e UDDI
B -XSL e SOAP
C -XML e SOAP
D -XML e UDDI
E -XHTML e UDDI