Questões de Concurso
Comentadas sobre conceitos básicos e algoritmos em algoritmos e estrutura de dados
Foram encontradas 402 questões
Função teste(inteiro a, inteiro b): inteiro
var x: inteiro
Início
x ← a
a ← b
b ← x
retorna (b * (x + a) / 2)
Fim.
Algoritmo Principal
var a, b: inteiro Início
Leia (a, b)
imprima (teste(a,b))
Fim
Considerando que a e b receberam, respectivamente, os valores 4 e 3, conclui-se que será impresso o valor
soma = 39.
Esse resultado foi entregue ao professor. Indagado sobre com qual algoritmo tinha encontrado o resultado correto, Beto percebeu que não mais lembrava. E teve que repetir as experiências.
Qual foi o algoritmo utilizado pelo estudante?
2. Ler salario
3. Se salario >=1000
4. Então
5. salarionovo = salario * 1,05
6. Senão
7. salario = salario * 1,075
8. Fim Se
9. Exibir salario
10. Exibir salarionovo
11. Fim programa
Para qualquer salario que for maior que 1000, o valor final de salario será acrescido em 50% de seu valor anterior.
2. Ler salario
3. Se salario >=1000
4. Então
5. salarionovo = salario * 1,05
6. Senão
7. salario = salario * 1,075
8. Fim Se
9. Exibir salario
10. Exibir salarionovo
11. Fim programa
Caso a linha 5 fosse salarionovo = salario * * 2, o valor da variável salario seria multiplicado por 2 duas vezes, tal que, se o valor da variável salario fosse 1000, então o valor de salarionovo seria 4000.
2. Ler salario
3. Se salario >=1000
4. Então
5. salarionovo = salario * 1,05
6. Senão
7. salario = salario * 1,075
8. Fim Se
9. Exibir salario
10. Exibir salarionovo
11. Fim programa
O comando na linha 7 faz aumentar o valor da variável salario em 75%. Esse comando, contudo, não poderá ser implementado da forma apresentada, uma vez que não é possível atribuir valor à variável salario, pois ela já está sendo utilizada no cálculo.
Comando (pseudocódigo) Estrutura de decisão/repetição
I. Se...então ( ) Estrutura de repetição com teste no final
II. Escolha...Caso ( ) Estrutura de seleção simples
III. Repita...Até ( ) Estrutura de repetição com variável de controle
IV. Para...Até...Faça ( ) Estrutura de seleção de múltipla escolha
A sequência CORRETA, de cima para baixo, é:
Caso F(X,Y) seja uma chamada da função, ao longo do programa, onde os parâmetros reais X e Y são variáveis cujos valores antes da chamada são, respectivamente, 10 e 20, esperamos que, ao terminar a função, os novos va- lores de X e Y sejam, respectivamente,
x, y, i: inteiro
result: real
inicio
leia (x)
leia (y)
result ←1
se (y > 0)
entao inicio
para i←1 ate y passo 1 faça
inicio
result ← result * x
fim para
fim entao
senao inicio
y ← y * (-1)
para i←1 ate y passo 1 faça
inicio
result ← result * (1/x)
fim para
fim senao
imprima (result)
fim
x, y, i: inteiro
result: real
inicio
leia (x)
leia (y)
result ←1
se (y > 0)
entao inicio
para i←1 ate y passo 1 faça
inicio
result ← result * x
fim para
fim entao
senao inicio
y ← y * (-1)
para i←1 ate y passo 1 faça
inicio
result ← result * (1/x)
fim para
fim senao
imprima (result)
fim
O programa a seguir é tipicamente uma estrutura:
if (expressão Booleana) {
códigos verdadeiros;
} else {
códigos falsos;
}

A codificação que gera o mesmo resultado da estrutura acima e que utiliza a estrutura para ... faça ..., corresponde à seguinte opção:
No que se refere às linguagens de programação, julgue o item subsecutivo.
A execução da função x descrita abaixo para o valor n igual a 8 fornecerá 21 como resultado.
long x(int n){
if (n<0) return -1;
if (n==0) return 0;
if (n==1) return 1;
return x(n-1) + x(n-2);
}
Os valores sim, não, falso e verdadeiro são considerados constantes lógicas.
A execução da função x descrita abaixo para o valor n igual a 8 fornecerá 21 como resultado.
long x(int n) {
if (n<0) return -1; if (n==0) return 0;
if (n==1) return 1;
return x(n-1) + x(n-2);
}
início
CONTADOR, SOMA: numérico
SOMA ← 0
para CONTADOR de 1 até 20 faça
SOMA ← CONTADOR + (1/CONTADOR)
fim-para
escreva “O total da sequência é”, SOMA
fim
O resultado abaixo será obtido ao se executar o algoritmo que a ele se segue.
Resultado:
1 0;
0 0;
2 1;
1 0;
3 2;
2 2;
Algoritmo:
program p;
var v: inteiro;
funcao f(v: inteiro; var k:inteiro): inteiro;
var p,q:inteiro;
inicio
se v < 2
então inicio
f := v;
k := 0;
fim
senão inicio
f := f(v-1, p) + f(v-2, q);
k := p + q + 1;
fim;
escreva(n,' ',k,'; ');
fim ;
inicio
n := 4;
escreva(f(3,n),n);
fim