Carregando...
Ir para o conteúdo principal

Questões de concursos

Confira várias questões de diferentes concursos públicos e responda as perguntas para testar o seu conhecimento.


Minhas questões:

Questões com:

Excluir questões:


Carregando...
Carregando...
Carregando...

Carregando...

Exibindo 1 a 15 de 37 questões.

Salvar em Meus Filtros
Imprimir página - Exibindo 1 a 15
Questões por página:
Q228477

Um Padrão de Projeto nomeia, abstrai e identifica os aspectos-chave de uma estrutura de projeto comum para torná-la útil para a criação de um projeto orientado a objetos reutilizáveis.
GAMMA, E., HELM, R., JOHNSON, R., VLISSIDES, J. Padrões de Projeto-Soluções Reutilizáveis de Software Orientado a Objetos. Porto Alegre: Bookman, 2000.

Em relação a Padrões de Projeto, analise as afirmações a seguir.

I. Prototype é um tipo de padrão estrutural.

II. Singleton tem por objetivos garantir que uma classe tenha ao menos uma instância e fornecer um ponto global de acesso para ela.

III. Template Method tem por objetivo definir o esqueleto de um algoritmo em uma operação, postergando a definição de alguns passos para subclasses.

IV. Iterator fornece uma maneira de acessar sequencialmente os elementos de um objeto agregado sem expor sua representação subjacente.

É correto apenas o que se afirma em

Carregando...
Q228472

Considere que G é um grafo qualquer e que V e E são os conjuntos de vértices e de arestas de G, respectivamente. Considere também que grau (v) é o grau de um vértice v pertencente ao conjunto V. Nesse contexto, analise as seguintes asserções.

Em G, a quantidade de vértices com grau ímpar é ímpar.

PORQUE

Para G, vale a identidade dada pela expressão



Acerca dessas asserções, assinale a opção correta.

Carregando...
Q228489

Escopo dinâmico: para as linguagens com escopo dinâmico, a vinculação das variáveis ao escopo é realizada em tempo de execução. (...) Se uma variável é local ao bloco, então o uso da dada variável no bloco será sempre vinculado àquela local. Contudo, se a variável for nãolocal, a sua vinculação depende da ordem de execução, a última vinculada na execução. A consequência disso é que, em um mesmo bloco de comandos, um identificador pode ter significados diferentes, e o programador precisa ter a ideia precisa de qual variável está sendo usada.
de MELO, A. C. V.; da SILVA, F. S. C. Princípios de Linguagens de Programação. São Paulo: Edgard Blücher, 2003. p.65.

Suponha que uma linguagem de programação tenha sido projetada com vinculação e verificação estáticas para tipos de variáveis, além de passagem de parâmetros por valor. Também é exigido pela especificação da linguagem que programas sejam compilados integralmente e que não é permitido compilar bibliotecas separadamente. Durante uma revisão da especificação da linguagem, alguém propôs que seja adicionado um mecanismo para suporte a variáveis com escopo dinâmico.

A respeito da proposta de modificação da linguagem, analise as seguintes afirmações.

I. As variáveis com escopo dinâmico podem ser tratadas como se fossem parâmetros para os subprogramas que as utilizam, sem que o programador tenha que especificá-las ou declarar seu tipo (o compilador fará isso). Assim, eliminase a necessidade de polimorfismo e é possível verificar tipos em tempo de compilação.

II. Como diferentes subprogramas podem declarar variáveis com o mesmo nome mas com tipos diferentes, se as variáveis com escopo dinâmico não forem declaradas no escopo onde são referenciadas, será necessário que a linguagem suporte polimorfismo de tipos.

III. Se as variáveis dinâmicas forem declaradas tanto nos escopos onde são criadas como nos subprogramas em que são referenciadas, marcadas como tendo escopo dinâmico, será possível identificar todos os erros de tipo em tempo de compilação.

É correto apenas o que se afirma em

Carregando...
Q228504

Listas ordenadas implementadas com vetores são estruturas de dados adequadas para a busca binária, mas possuem o inconveniente de exigirem custo computacional de ordem linear para a inserção de novos elementos. Se as operações de inserção ou remoção de elementos forem frequentes, uma alternativa é transformar a lista em uma árvore binária de pesquisa balanceada, que permitirá a execução dessas operações com custo logarítmico.

Considerando essas informações, escreva um algoritmo recursivo que construa uma árvore binária de pesquisa completa, implementada por estruturas auto-referenciadas ou apontadores, a partir de um vetor ordenado, v, de n inteiros, em que n = 2m - 1, m > 0. O algoritmo deve construir a árvore em tempo linear, sem precisar fazer qualquer comparação entre os elementos do vetor, uma vez que este já está ordenado. Para isso,

a) descreva a estrutura de dados utilizada para a implementação da árvore

b) escreva o algoritmo para a construção da árvore. A chamada principal à função recursiva deve passar, como parâmetros, o vetor, índice do primeiro e último elementos, retornando a referência ou apontador para a raiz da árvore criada.

Observação: Qualquer notação em português estruturado, de forma imperativa ou orientada a objetos deve ser considerada, assim como em uma linguagem de alto nível, como o Pascal, C e Java.

Carregando...
Q228491

O conceito de Tipo de Dados Abstrato (TDA) é popular em linguagens de programação. Nesse contexto, analise as afirmativas a seguir.

I. A especifi cação de um TDA é composta das operações aplicáveis a ele, da sua representação interna, e das implementações das operações.

II. Dois mecanismos utilizáveis na implementação de um TDA em programas orientados a objetos são a composição e a herança.

III. Se S é um subtipo de outro T, então entidades do tipo S em um programa podem ser substituídas por entidades do tipo T, sem alterar a corretude desse programa.

IV. O encapsulamento em linguagens de programação orientadas a objetos é um efeito positivo do uso de TDA.

É correto apenas o que se afi rma em

Carregando...
Q228490

É comum que linguagens de programação permitam a descrição textual de constantes em hexadecimal, além de descrições na base dez. O compilador para uma linguagem que suporte constantes inteiras em hexadecimal precisa diferenciar inteiros em base dez dos números hexadecimais que não usam os dígitos de A a F. Por exemplo, a sequência de caracteres pode ser interpretada como doze em base dez ou como dezoito em hexadecimal. Uma maneira de resolver esse problema é exigindo que as constantes em hexadecimal terminem com o caracter “x”. Assim, não há ambiguidade, por exemplo, no tratamento das sequências 12 e 12x.

A gramática a seguir descreve números inteiros, possivelmente com o símbolo “x” após os dígitos. Os não terminais são M, N, e E os terminais são x e d, em que d representa um dígito.



Durante a construção de um autômato LR para essa gramática, os seguintes estados são defi nidos:



A respeito dessa gramática, analise as seguintes asserções e a relação proposta entre elas.

A gramática descrita é do tipo LR(0).

PORQUE

É possível construir um autômato LR(0), determinístico, cujos estados incluem e0 e e1 acima descritos.

Acerca dessas asserções, assinale a opção correta.

Carregando...
Q228476

As filas de prioridades (heaps) são estruturas de dados importantes no projeto de algoritmos. Em especial, heaps podem ser utilizados na recuperação de informação em grandes bases de dados constituídos por textos. Basicamente, para se exibir o resultado de uma consulta, os documentos recuperados são ordenados de acordo com a relevância presumida para o usuário. Uma consulta pode recuperar milhões de documentos que certamente não serão todos examinados. Na verdade, o usuário examina os primeiros m documentos dos n recuperados, em que m é da ordem de algumas dezenas.

Considerando as características dos heaps e sua aplicação no problema descrito acima, avalie as seguintes afirmações.

I. Uma vez que o heap é implementado como uma árvore binária de pesquisa essencialmente completa, o custo computacional para sua construção é O(n log n).

II. A implementação de heaps utilizando-se vetores é eficiente em tempo de execução e em espaço de armazenamento, pois o pai de um elemento armazenado na posição i se encontra armazenado na posição 2i+1.

III. O custo computacional para se recuperar de forma ordenada os m documentos mais relevantes armazenados em um heap de tamanho n é O(m log n).

IV. Determinar o documento com maior valor de relevância armazenado em um heap tem custo computacional O(1).

Está correto apenas o que se afirma em

Carregando...
Q228495

O razor é uma arquitetura para desempenho better-than-worst-case que usa um registrador especializado, mostrado na fi gura, que mede e avalia os erros.



Considerando essas informações, analise as afi rmações a seguir.

I. Sistemas digitais são tradicionalmente concebidos como sistemas assíncronos regidos por um clock.

II. Better-than-worst-case é um estilo de projeto alternativo em que a lógica detecta e se recupera de erros, permitindo que o circuito possa operar com uma frequência maior.

III. Nos sistemas digitais, o período de clock é determinado por uma análise cuidadosa para que os valores sejam armazenados corretamente nos registradores, com o período de clock alargado para abranger o atraso de pior caso.

É correto o que se afirma em

Carregando...
Q228488

O problema P versus NP é um problema ainda não resolvido e um dos mais estudados em Computação. Em linhas gerais, deseja-se saber se todo problema cuja solução pode ser eficientemente verificada por um computador, também pode ser eficientemente obtida por um computador. Por “eficientemente” ou “eficiente” significa “em tempo polinomial”.

A classe dos problemas cujas soluções podem ser eficientemente obtidas por um computador é chamada de classe P. Os algoritmos que solucionam os problemas dessa classe têm complexidade de pior caso polinomial no tamanho das suas entradas.

Para alguns problemas computacionais, não se conhece solução eficiente, isto é, não se conhece algoritmo eficiente para resolvê-los. No entanto, se para uma dada solução de um problema é possível verificá-la eficientemente, então o problema é dito estar em NP. Dessa forma, a classe de problemas para os quais suas soluções podem ser eficientemente verificadas é chamada de classe NP.

Um problema é dito ser NP-completo se pertence à classe NP e, além disso, se qualquer outro problema na classe NP pode ser eficientemente transformado nesse problema. Essa transformação eficiente envolve as entradas e saídas dos problemas.

Considerando as noções de complexidade computacional apresentadas acima, analise as afirmações que se seguem.

I. Existem problemas na classe P que não estão na classe NP.

II. Se o problema A pode ser eficientemente transformado no problema B e B está na classe P, então A está na classe P.

III. Se P = NP, então um problema NP-completo pode ser solucionado eficientemente.

IV. Se P é diferente de NP, então existem problemas na classe P que são NP-completos.

É correto apenas o que se afirma em

Carregando...
Q228471

Uma equipe está realizando testes com base nos códigos-fonte de um sistema. Os testes envolvem a verifi cação de diversos componentes individualmente, bem como das interfaces entre os componentes.

No contexto apresentado, essa equipe está realizando testes em nível de

Carregando...
Q228469

A tabela a seguir apresenta a relação de mintermos e maxtermos para três variáveis.



Analise o circuito de quatro variáveis a seguir.



Considerando esse circuito, as funções f e g são, respectivamente,

Carregando...
Q228464

Considere a gramática a seguir, em que S, A e B são símbolos não terminais, 0 e 1 são terminais e ε é a cadeia vazia.



A respeito dessa gramática, analise as afi rmações a seguir.

I. Nas cadeias geradas por essa gramática, o último símbolo é 1.

II. O número de zeros consecutivos nas cadeias geradas pela gramática é, no máximo, dois.

III. O número de uns em cada cadeia gerada pela gramática é maior que o número de zeros.

IV. Nas cadeias geradas por essa gramática, todos os uns estão à esquerda de todos os zeros.

É correto apenas o que se afi rma em

Carregando...
Q228503

Os números de Fibonacci correspondem à uma sequência infi nita na qual os dois primeiros termos são 0 e 1. Cada termo da sequência, à exceção dos dois primeiros, é igual à soma dos dois anteriores, conforme a relação de recorrência abaixo.



Desenvolva dois algoritmos, um iterativo e outro recursivo, que, dado um número natural n > 0, retorna o n-ésimo termo da sequência de Fibonacci. Apresente as vantagens e desvantagens de cada algoritmo.

Carregando...
Q228468

Um navegador Web executa em um hospedeiro A, em uma rede de uma organização, e acessa uma página localizada de um servidor Web em um hospedeiro B, situado em outra rede na Internet. A rede em que A se situa conta com um servidor DNS local. Um profi ssional deseja fazer uma lista com a sequência de protocolos empregados e comparar com o resultado apresentado por uma ferramenta de monitoramento executada no hospedeiro A. A lista assume que

i) todas as tabelas com informações temporárias e caches estão vazias;
ii) o hospedeiro cliente está confi gurado com o endereço IP do servidor DNS local.

Qual das sequências a seguir representa a ordem em que mensagens, segmentos e pacotes serão observados em um meio físico ao serem enviados pelo hospedeiro A?

Carregando...
Q228463

O problema da parada para máquinas de Turing, ou simplesmente problema da parada, pode ser assim descrito: determinar, para quaisquer máquina de Turing M e palavra w, se M irá eventualmente parar com entrada w.

Mais informalmente, o mesmo problema também pode ser assim descrito: dados um algoritmo e uma entrada fi nita, decidir se o algoritmo termina ou se executará indefinidamente.

Para o problema da parada,

Carregando...
GABARITO:

  • 1) E
  • 2) D
  • 3) D
  • 5) D
  • 6) E
  • 7) C
  • 8) D
  • 9) D
  • 10) E
  • 11) B
  • 12) B
  • 14) A
  • 15) C
  •  
  •  
© Aprova Concursos - Al. Dr. Carlos de Carvalho, 1482 - Curitiba, PR - 0800 727 6282