Foram encontradas 582 questões.
- Fundamentos de ProgramaçãoAlgoritmosAlgoritmos de Busca
- Fundamentos de ProgramaçãoAlgoritmosConstrução de Algoritmos
- Fundamentos de ProgramaçãoEstruturas de DadosEstrutura de Dados: Array
O algoritmo a seguir deve buscar um determinado elemento (variável X) em um conjunto ordenado de N elementos, armazenados contiguamente na memória em um vetor (variável V). Considere que as variáveis imin, imax, imid e N são de números inteiros.
Entrada:
N – Número de elementos da sequência ordenada V.
V – Sequência de elementos ordenados, acessíveis pelas posições de [0,N-1].
X – Valor do elemento a ser consultado no vetor V.
Saída do retorno:
-1 – Caso o elemento X não pertença à sequência ordenada V.
imid – Posição do elemento X na sequência ordenada V.
Este algoritmo possui dois erros.
| 01 | imin ← 0 enquanto imax > imin faça imid ← (imax+imin)/2 imin ← imid + 1 senão se V[imid] > X então imax ← imid + 1 senão retorne imid fim-se fim-se fim-enquanto |
Considere as possíveis alterações:
I - Linha 01: imin ← 1
II - Linha 03: enquanto imax >= imin faça
III - Linha 04: imid ← (imax+imin+1)/2
IV - Linha 06: imin ← imid - 1
V - Linha 09: imax ← imid - 1
Qual das alternativas corrige o algoritmo anterior?
Provas
- Paradigmas de ProgramaçãoOrientação a ObjetosAnálise e Projeto Orientado a Objetos
- Paradigmas de ProgramaçãoOrientação a ObjetosOrientação a Objetos: Classes e Objetos
- Paradigmas de ProgramaçãoOrientação a ObjetosOrientação a Objetos: Encapsulamento
- Paradigmas de ProgramaçãoOrientação a ObjetosPrincípios SOLID
O código a seguir, escrito em uma típica linguagem orientada a objetos, trata da renderização (Render) contínua de múltiplas camadas (Layers) em uma cena de um jogo (Scene). Analise-o:
| interface Layer { void Render(); } public Layer[] Layers; } public static void Main (string[] args) { var numLayers = 10; Layer[numLayers] }; while (true) { Layer l = scene.GetCurrentLayer(); currentLayer ++; if(currentLayer >= scene.Layers.Length) currentLayer = 0; scene.SetNextLayer(currentLayer); } } } |
Considere também as seguintes modificações no código:
M1. Mover a lógica de rodízio, que atualmente está implementada no método “Main” da classe “MainClass” para dentro de um método “mainloop” na própria classe “MainClass”.
M2. Transformar o atributo “Layers” da classe “Scene” de “public” para “private”.
M3. Transformar o atributo “NextLayer” da classe “Scene” de “private” para “public”.
M4. Adicionar um construtor à classe “Scene”, que recebe como parâmetro o número de camadas e inicializa o vetor de camadas “Layers”. Modificar o método “Main” da classe “MainClass” para utilizar esse construtor ao criar a instância “scene”.
M5. Transformar os métodos “SetNextLayer” e “GetNextLayer” de “public” para “private”.
M6. Adicionar um método na classe “Scene” que recebe como parâmetro um objeto do tipo “Layer” e o adiciona ao vetor de camadas “Layers”. Utilizar esse método na classe “MainClass” para adicionar camadas à cena.
M7. Mover a lógica de rodízio, que atualmente está implementada na classe “MainClass” para dentro do método “GetCurrentLayer” da classe “Scene”.
M8. Adicionar um construtor à classe “MainClass” , que recebe como parâmetro o número de camadas e inicializa o vetor de camadas “Layers”. Modificar o método “Main” da classe “MainClass” para utilizar esse construtor e criar uma instância de “MainClass”.
M9. Remover os métodos “SetNextLayer” e “GetCurrentLayer” da classe “Scene”.
Qual das alternativas abaixo descreve um conjunto de modificações que, quando realizadas em conjunto, resulta em um código onde os princípios da orientação a objetos são mais bem aplicados?
Provas
- Paradigmas de ProgramaçãoOrientação a ObjetosAnálise e Projeto Orientado a Objetos
- Paradigmas de ProgramaçãoOrientação a ObjetosOrientação a Objetos: Classes e Objetos
Analise o código abaixo, escrito em uma típica linguagem de programação orientada a objetos com tipagem forte:
| class X { Y y; class Y { X x; private Y(X p_x) { x = p_x; } } y = new Y(this); } } |
Que tipo de relacionamento entre classes esse código implementa?
Provas
- Paradigmas de ProgramaçãoOrientação a ObjetosOrientação a Objetos: Classes e Objetos
- Paradigmas de ProgramaçãoOrientação a ObjetosOrientação a Objetos: Herança
- Paradigmas de ProgramaçãoOrientação a ObjetosOrientação a Objetos: Polimorfismo
Analise o seguinte trecho de código, escrito em uma típica linguagem de programação orientada a objetos com tipagem forte:
| class Animal { } public class Principal { void vacinar(Mamifero m) { } } } |
Qual das alternativas a seguir contém código que, ao ser inserido dentro do método main() da classe Principal, não irá causar erro de compilação?
Provas
- Paradigmas de ProgramaçãoOrientação a ObjetosOrientação a Objetos: Abstração
- Paradigmas de ProgramaçãoOrientação a ObjetosOrientação a Objetos: Classes e Objetos
- Paradigmas de ProgramaçãoOrientação a ObjetosOrientação a Objetos: Herança
Analise o seguinte código, escrito em uma típica linguagem de programação orientada a objetos:
| class FiguraGeometrica { double calcularArea() { return 0; } } double largura, altura; largura = larg; } } Quadrado(double lado) { super(lado,lado); } } |
Qual das alternativas a seguir melhor descreve o problema conceitual presente no código mostrado anteriormente e uma possível solução utilizando corretamente conceitos da programação orientada a objetos?
Provas
- Fundamentos de ProgramaçãoEstruturas de SeleçãoEstrutura if-then-else
- Fundamentos de ProgramaçãoLógica de Programação
- Fundamentos de ProgramaçãoPseudocódigo
Analise o seguinte pseudocódigo (Obs.: Os números no lado esquerdo de cada instrução indicam os endereços de memória onde cada instrução é armazenada, o símbolo ‘:=’ significa atribuição, e o comando ‘goto’ transfere a execução imediatamente para a instrução indicada pelo endereço especificado).
| 10 t := x > y |
Qual estrutura de controle está sendo implementada pelo pseudocódigo?
Provas
- Fundamentos de ProgramaçãoEstruturas de Repetição
- Fundamentos de ProgramaçãoEstruturas de Seleção
- Paradigmas de ProgramaçãoProgramação Estruturada
Qual das afirmações abaixo melhor expressa a diferença conceitual entre linguagens de programação estruturadas e linguagens de programação não estruturadas?
Provas
Considere um arquivo teste.php, acessível via URL http://127.0.0.1/teste.php, e cujo conteúdo é mostrado a seguir:
| <!DOCTYPE html><html> var senha = document.getElementById("c").value; var x = senha.charCodeAt(i); } document.getElementById("g").submit() } <form id="g" action="teste.php" method="POST"> Nome: <input type="text" name="a" /><br/> value="<?=$_POST['d']?>"/><br/> </form> <button onclick="f()">Gerar senha</button> </body></html> |
Considere a seguinte a afirmação: "A função f() faz a codificação de uma senha da seguinte forma: para cada caractere da senha, um novo número aleatório entre 2 e 5 é obtido e é somado ao código do caractere original, gerando um novo caractere. Os novos caracteres são concatenados, formando uma senha codificada diferente da original".
Qual das alternativas a seguir está correta?
Provas
Considere um arquivo teste.php, acessível via URL http://127.0.0.1/teste.php, e cujo conteúdo é mostrado a seguir:
| <!DOCTYPE html><html> var senha = document.getElementById("c").value; var x = senha.charCodeAt(i); } document.getElementById("g").submit() } <form id="g" action="teste.php" method="POST"> Nome: <input type="text" name="a" /><br/> value="<?=$_POST['d']?>"/><br/> </form> <button onclick="f()">Gerar senha</button> </body></html> |
O que acontece se um usuário acessar a URL http://127.0.0.1/teste.php, digitar seu nome e uma senha qualquer no formulário, e acionar o botão "Gerar senha"?
Provas
Considere um arquivo teste.py, cujo conteúdo é mostrado a seguir:
| import sys def main(args): palavra = 'Alo mundo' if __name__ == '__main__': main(sys.argv) |
O que é impresso quando o script acima é executado em um ambiente com suporte ao Python 3.4.0, por meio do comando: python teste.py Pessoal?
Provas
Caderno Container