Magna Concursos

Foram encontradas 2.308 questões.

Considere uma tabela hash H, onde H[i] denota uma posição da tabela. H é implementada usando uma função h(k) para determinar a posição i de armazenamento, k sendo a chave do elemento de dados x a ser armazenado em H, e denotada por k = chave[x]. H é um hash com encadeamento, ou seja, cada H[i] é uma lista encadeada que armazenará os elementos de dados que, de outra forma, colidiriam para a posição. Nesta implementação, as listas são duplamente encadeadas, ou seja, cada elemento e da lista armazena também os ponteiros proximo[e] e anterior[e]. Cada lista L possui ainda o valor inicio[L], que aponta para o primeiro elemento da lista. NIL representa um ponteiro vazio.

!$ \gets !$ denota o operador de atribuição.

O pseudocódigo a seguir mostra uma operação nesta estrutura, porém apresenta erro em uma de suas linhas. As linhas estão numeradas apenas para facilitar a correspondência com as alternativas.

01 proximo[chave[x]] !$ \gets !$ inicio[H[h(chave[chave[x]])]]

02 se inicio[H[h(chave[chave[x]])]] !$ \ne !$ NIL

03 então inicio[anterior[inicio[H[h(chave[chave[x]])]]]] !$ \gets !$ chave[x]

04 inicio[H[h(chave[chave[x]])]] !$ \gets !$ chave[x]

05 anterior[chave[x]] !$ \gets !$ NIL

O erro citado é corrigido por

 

Provas

Questão presente nas seguintes provas
736241 Ano: 2008
Disciplina: TI - Desenvolvimento de Sistemas
Banca: CESGRANRIO
Orgão: Petrobrás
Considere o trecho de código a seguir.

Enunciado 736241-1

Se x for da classe String e tiver sido inicializado, esse trecho de código Java
 

Provas

Questão presente nas seguintes provas
Sobre o algoritmo de ordenação heapsort, assinale a afirmação correta.
 

Provas

Questão presente nas seguintes provas
736239 Ano: 2008
Disciplina: TI - Desenvolvimento de Sistemas
Banca: CESGRANRIO
Orgão: Petrobrás
Provas:
São estratégias possíveis de serem adotadas por uma organização para evolução de seus sistemas legados as apresentadas a seguir, EXCETO:
 

Provas

Questão presente nas seguintes provas
Estudos baseados na análise de diversos projetos de desenvolvimento de software sugerem que tais projetos têm maior chance de sucesso quando empregam metodologia e gerenciamento alinhados ao paradigma de desenvolvimento de novos produtos, em contraponto ao paradigma de produção industrial. Com base nessas observações, a maioria das metodologias modernas de desenvolvimento de software recomenda:
 

Provas

Questão presente nas seguintes provas
736237 Ano: 2008
Disciplina: TI - Desenvolvimento de Sistemas
Banca: CESGRANRIO
Orgão: Petrobrás
Para os recursos e características dos scripts shell no UNIX, é INCORRETO afirmar que
 

Provas

Questão presente nas seguintes provas
736235 Ano: 2008
Disciplina: TI - Desenvolvimento de Sistemas
Banca: CESGRANRIO
Orgão: Petrobrás
Sobre testes no Processo Unificado, é correto afirmar que um(a)
 

Provas

Questão presente nas seguintes provas
736233 Ano: 2008
Disciplina: TI - Desenvolvimento de Sistemas
Banca: CESGRANRIO
Orgão: Petrobrás
"Classes devem estar abertas para extensão e fechadas para modificação" é um princípio de projeto de modelos orientados a objetos. Tal princípio pode ser aplicado através do padrão de projeto
 

Provas

Questão presente nas seguintes provas
736232 Ano: 2008
Disciplina: TI - Desenvolvimento de Sistemas
Banca: CESGRANRIO
Orgão: Petrobrás

São mostrados a seguir os códigos fontes das classes Produto e ProdutoTest. O método testDescontoValido() é invocado pelo framework de testes automaticamente quando os testes são executados, para exercitar o método descontoValido() da classe Produto. O método assertEquals gera um junit.framework.AssertionFailedError quando os valores de seus argumentos são diferentes entre si.

01 package br.com.exemplo.estoque;

02

03 public class Produto {

04

05 private double preco;

06 private double precoMinimo;

07

08 public Produto(double preco, double precoMinimo) {

09 this.preco = preco;

10 this.precoMinimo = precoMinimo;

11 }

12

13 public boolean descontoValido(int percentual) {

14 double precoComDesconto;

15 precoComDesconto = this.preco - this.preco * percentual / 100;

16 return (precoComDesconto >= this.precoMinimo);

17 }

18 }

01 package br.com.exemplo.estoque;

02

03 import org.junit.Test;

04 import static org.junit.Assert.*;

05

06 public class ProdutoTest {

07

08 @Test

09 public void testDescontoValido() {

10 int percentual = 90;

11 boolean resultadoEsperado = true;

12

13 System.out.println("caderno");

14 Produto caderno = new Produto(10.00, 1.00);

15 boolean resultado = caderno.descontoValido(percentual);

16 assertEquals(resultadoEsperado, resultado);

17

18 System.out.println("caneta");

19 Produto caneta = new Produto(1.00, 0.10);

20 resultado = caneta.descontoValido(percentual);

21 assertEquals(resultadoEsperado, resultado);

22 }

23 }

Com base nos códigos fontes apresentados, conclui-se que

 

Provas

Questão presente nas seguintes provas
736231 Ano: 2008
Disciplina: TI - Desenvolvimento de Sistemas
Banca: CESGRANRIO
Orgão: Petrobrás
Analise as afirmativas a seguir, sobre requisitos em projetos de software.

I - O rastreamento de requisitos é de grande importância para conduzir análises de impacto quando há mudanças em requisitos.

II - O acrônimo FURPS+ se refere aos requisitos não funcionais das categorias de Feasibility, Usability, Reliability, Performance e Supportability.

III - Um requisito pode conter, além da especificação, atributos que sirvam ao seu gerenciamento.

IV - Casos de uso são descrições da interação entre um ator e o sistema e, portanto, especificam apenas requisitos funcionais.

Estão corretas APENAS as afirmativas
 

Provas

Questão presente nas seguintes provas