Foram encontradas 57.071 questões.
Analise o seguinte programa em Java SE 11:
class Contador {
int valor = 0;
void incrementar() {
valor++;
}
}
public class Teste {
public static void main(String[] args) throws Exception {
Contador c = new Contador();
Thread t1 = new Thread(() -> {
for(int i = 0; i < 1000; i++)
c.incrementar();
});
Thread t2 = new Thread(() -> {
for(int i = 0; i < 1000; i++)
c.incrementar();
});
t1.start();
t2.start();
t1.join();
t2.join();
System.out.println(c.valor);
}
}
Considerando a execução concorrente das threads e o funcionamento da instrução valor++. E, ainda, que a JVM pode intercalar as operações das threads de forma imprevisível e que a operação de incremento (valor++) não é atômica na especificação Java, assinale a alternativa correta.
Provas
Analise o seguinte programa em linguagem C:
#include <stdio.h>
#include <stdlib.h>
int main(){
int *v;
int i;
v = (int*) malloc(5 * sizeof(int));
for(i = 0; i < 5; i++){
*(v + i) = i * 2;
}
int *p = v + 2;
*p = *p + 5;
printf("%d %d %d", v[1], v[2], *(v + 3));
free(v);
return 0;
}
Assinale a alternativa que apresenta a saída produzida pelo programa.
Provas
Analise o seguinte código em linguagem C:
int x = 5;
int *p = &x;
int **pp = &p;
A expressão **pp acessa:
Provas
Considere o algoritmo Quicksort utilizando como pivô o primeiro elemento do vetor. Qual é a complexidade assintótica no pior caso para ordenar um vetor de tamanho \( n \)?
Provas
Analise o seguinte código em linguagem C:
#include <stdio.h>
void func(int *v, int n){
int i;
for(i=0;i<n;i++){
v[i] = v[i] * 2;
}
}
int main(){
int a[4] = {1,2,3,4};
func(a,4);
printf("%d %d %d %d",a[0],a[1],a[2],a[3]);
}
A saída produzida pelo programa será:
Provas
Considere o seguinte algoritmo de busca binária aplicado sobre um vetor ordenado de inteiros com tamanho \( n \):
while (inicio <= fim) {
meio = inicio + (fim - inicio) / 2
if (v[meio] == x)
return meio
else if (v[meio] < x)
inicio = meio + 1
else
fim = meio - 1
}
Considerando o pior caso, qual é a complexidade assintótica desse algoritmo em função de \( n \)?
Provas
O desenvolvimento de um sistema gerenciador de banco de dados robusto exige que a modelagem dos dados siga um ciclo de vida estruturado, partindo da abstração das regras de negócio até a especificação de como os dados serão armazenados em disco. Sobre as etapas fundamentais do projeto de um banco de dados, analise as assertivas abaixo:
I. A fase inicial consiste em levantar requisitos de dados com o cliente. É recomendado que o levantamento dos requisitos funcionais (operações e transações) sejam feitos em etapas posteriores para não gerar confusões nos tipos de requisitos.
II. O projeto conceitual utiliza modelos de dados de alto nível para criar uma descrição concisa das necessidades da organização. Por omitir propositalmente os detalhes de implementação e armazenamento, o esquema conceitual atua como uma excelente ferramenta de comunicação para validar os requisitos junto aos usuários não técnicos.
III. A transição para a implementação real do software inicia-se na fase de projeto lógico (também chamada de mapeamento do modelo de dados), momento em que o esquema conceitual é transformado para o modelo de dados suportado pelo SGBD comercial adotado pela instituição, a exemplo do modelo relacional.
IV. No projeto físico, a atenção dos arquitetos de banco de dados volta-se para a infraestrutura e o desempenho, especificando as estruturas de armazenamento internas, a organização dos arquivos, os caminhos de acesso e a criação de índices.
Quais estão corretas?
Provas
Analise o seguinte programa escrito em linguagem C conforme o padrão ANSI C:

Considerando a execução do algoritmo apresentado, qual será a saída exibida pelo programa?
Provas
Considere o diagrama de casos de uso UML do sistema de matrícula apresentado.

Com base nos elementos representados no diagrama, analise as assertivas a seguir:
I. O ator Administrador é uma especialização do ator Usuário, herdando assim suas interações com os casos de uso associados a esse ator.
II. O relacionamento <<include>> entre os casos de uso indica que o comportamento do caso de uso incluído é obrigatoriamente executado sempre que o caso de uso base é realizado.
III. O ator Aluno possui associação direta com o caso de uso Envio das informações, sendo responsável por enviar dados ao sistema de faturamento.
IV. O sistema externo Sistema de Faturamento interage com o caso de uso Envio das informações, indicando integração entre sistemas.
Quais estão corretas?
Provas
Na arquitetura e no projeto de software, a aplicação de Padrões de Projeto (Design Patterns) é fundamental para resolver problemas recorrentes com soluções previamente testadas e otimizadas pela engenharia. Contudo, a eficácia dessas soluções depende da escolha do padrão correto para o cenário arquitetural adequado, evitando a inserção de complexidade desnecessária no código. Relacione a Coluna 1 à Coluna 2, associando os padrões de projeto às suas respectivas situações de aplicabilidade prática.
Coluna 1
1. Singleton.
2. Factory Method.
3. Observer.
Coluna 2
( ) Quando a mudança do estado interno de um objeto precisa ser percebida (mas com baixo acoplamento) por outros objetos, gerando um gatilho para, por exemplo, criação de outros objetos, execução de funções ou recuperação de uma instância única de um objeto, entre outros.
( ) Quando for necessário que uma única instância possa ser visível e acessível globalmente, não sendo possível instanciar duas ou mais instâncias distintas da mesma classe.
( ) Quando uma classe quer delegar a criação de objetos para suas subclasses, encapsulando o conhecimento sobre as subclasses criadas em uma única superclasse.
A ordem correta de preenchimento dos parênteses, de cima para baixo, é:
Provas
Caderno Container