Questões de Concurso
Comentadas sobre conceitos básicos e algoritmos em algoritmos e estrutura de dados
Foram encontradas 353 questões

Considere o algoritmo abaixo, escrito em linguagem estruturada:
A = valor inicial
T = 0
Enquanto A < 10 faça
T = A + T
A = A + 1
Fim Enquanto
Supondo que A tenha como valores iniciais 5 e 2, os valores finais de T serão, respectivamente,
Na programação de computadores, considere o seguinte algoritmo:
var a, b, c: inteiro
var x, y, z: lógico início
a ← 2
b ← 4
c ← 0
x ← ((a+b) < (b-c) .E. (a*a) = (b-c))
y ← ((b/a) >= (a-c) .OU. (b>=a))
z ← ((a-1) > (c+1) .E. (b*c) >= (a+1)) fim
As variáveis x, y e z receberão, respectivamente, os
valores:
Considere o seguinte pseudocódigo:
Função misteriosa(a: inteiro)
Início
Se (a<1) então retorna -1;
Se (a==1) então retorna 2;
Se (a>1) então retorna (misteriosa(a-1)* misteriosa(a-2));
Fim
Para tentar descobrir o que a função misteriosa faz, um aluno experimentou a função com os valores de entrada 1, 3 e 4 e obteve os seguintes resultados, respectivamente:
Considerando a linguagem utilizada na construção de algoritmos, julgue o item a seguir.
Se o algoritmo para o cálculo da média de determinado aluno
utilizar a fórmula média = (P1 + 2*P2) / 3, em que P1 e P2
referem-se, respectivamente, às notas do aluno na primeira e na
segunda prova, e se a média mínima necessária para o aluno
ser aprovado na disciplina for 4,5, esse aluno será aprovado se
obtiver nota 5,0 na primeira prova e 4,0 na segunda prova.
Sobre o conceito de Algoritmos Recursivos, analise as afirmações abaixo e, a seguir, assinale a alternativa correta.
I. Um programa tem um número limitado de procedimentos recursivos.
II. Recursividade é utilizada exclusivamente quando não se sabe solucionar um problema de maneira imediata, então é realizada a divisão em problemas menores para alcançar o resultado desejado.
III. Todos os problemas computacionais resolvidos de maneira iterativa gastam mais memória que se resolvidos de forma recursiva.
k=10
y=0
enquanto y < 10
k = k - 2
y = y + 3
x = 1 - y * k
fim_enquanto
inteiro soma, i
soma - 0
para i de 100 até 200 faça
se i mod 2 = 0 então
soma - soma + i
fimse
fimpara
escreva soma
fimalgoritmo
Considerando o algoritmo mostrado, é correto afirmar que, com relação à execução e ao valor impresso, esse algoritmo
public static void main(String args[]) {
System.out.println("Saida:");
xyz(5, 0);
}
static int xyz(int n, int m) {
int i;
for (i = 0; i < m; ++i) {
System.out.println(" " + i + " ");
}
System.out.println("xyz(" + n + "," + m + ")");
if (n == 1) {
return 1;
}
if (n % 2 == 0) {
return xyz(n / 2, m + 1);
}
return xyz((n - 1) / 2, m + 1) + xyz((n + 1) / 2, m + 1);
}
}
O resultado do código apresentado é
Para i = 1, 2, ..., n faça
Para j = i, i+1, ..., n faça
B;
Supondo que as variáveis i e j não sofram alterações no bloco de comandos B, o número total de vezes que B é executado é uma função:
Considerando que o algoritmo seguinte possui um arranjo A que armazena n > 3 elementos, é correto afirmar que a saída (s) será a soma dos elementos das células ímpares de A.
A[0] = 0;
para i = 2 até n-1 em incrementos de 3 faça
s = s + A [i]
retorna s