Questões de Concurso sobre Algoritmos e estrutura de dados

 
 
Disciplina 1
Assunto 10
Banca
Instituição
Cargo
Ano
Carreira
Área de formação
Escolaridade
Dificuldade
 
Comentários:
Professores
Alunos
Meus Comentários
Vídeo
 
Minhas questões:
Resolvidas
Não resolvidas
Certas
Erradas
 
Tipo de questão:
Certo e errado
Múltipla escolha
Incluir questões:
Anuladas
Desatualizadas
 
Questões:
Todas as questões
 
Filtro simplificado
 
Questões
Todas as questões
 
2.151 questões encontradas
Questões por página
20
Mais recentes
 

Analise o programa a seguir, escrito na forma de uma pseudolinguagem (português estruturado).


Início

Inteiro: a, b, c, i, Soma;

a ← 0;

b ← 1;

c ← 2;

Para i de 1 até 5 faça

[

Se (c é par)

Então

[

a ← a+1;

b ← b+2;

c ← c+3;

]

Senão

[

a ← a-1;

b ← b-1;

c ← c-1;

]

]

Soma ← a + b + c;

Fim.


A variável Soma, na última linha do programa, terminará com o valor


A

12


B

13


C

14


D

15


E

16

Considere o seguinte trecho de código extraído de Manzano & Oliveira (2016, p. 155):


tipo


BIMESTRE = conjunto[1..4] de real

CAD_ALUNO = registro

NOME : caractere

NOTA : BIMESTRE

fim_registro

var

ALUNO: conjunto[1..8] de CAD_ALUNO


Fonte: MANZANO, José Augusto & OLIVEIRA, Jayr Figueiredo de. Algoritmos: Lógica para desenvolvimento de programação de computadores. 18 ed. São Paulo: Érica, 2016.

É INCORRETO afirmar que:


A

Trata-se de um trecho de código em Português Estruturado, descrevendo a definição de um registro e sua posterior definição como o tipo de uma variável chamada ALUNO.


B

Podemos dizer que na estrutura descrita existe um campo chamado NOTA do tipo BIMESTRE, sendo BIMESTRE a especifi cação de um tipo de conjunto matricial de uma única dimensão.


C

A estrutura de dados homogênea descrita no TIPO é bastante versátil e nos permite trabalhar de uma forma mais adequada com diversos problemas, facilitando a construção de programas mais efi cientes.


D

Após a instrução var, foi indicada a variável ALUNO com 8 posições do tipo CAD_ALUNO, que, por sua vez, contém NOME do tipo caractere e NOTA do tipo BIMESTRE com quatro posições.


E

A leitura dos dados da estrutura descrita pode ser feita utilizando dois laços de repetição encadeados em que, no primeiro, será controlado o número de alunos da turma (oito, no exemplo) e, no segundo laço, será controlada o número de notas de cada aluno (quatro, no exemplo).

Caso, no programa apresentado, as atribuições iniciais às variáveis v1, v2 e v3 sejam alteradas conforme mostrado a seguir,


v1 ← 1;

v2 ← 1;

v3 ← 1;


o novo valor impresso da variável X em relação ao valor impresso de X no programa original será


A

igual.


B

acrescido de 1.


C

acrescido de 3.


D

acrescido de 6.


E

acrescido de 9.

A Figura 1, abaixo, apresenta um algoritmo escrito no software VisuAlg 3.0.


algoritmo "semnome"

var

cont, produto: inteiro

inicio

cont <- 0;

produto <- 1;

repita

cont <- cont + 1;

produto <- produto * cont;

escreval (cont, "|", produto)

ate ((produto > 100) ou (cont >= 10))

fimalgoritmo


Figura 1 – Algoritmo escrito no software VisuAlg 3.0


Quais serão, respectivamente, os valores das variáveis "cont" e "produto" ao final da execução do algoritmo da Figura 1?


A

5 e 120.


B

3 e 6.


C

10 e 100.


D

4 e 24.


E

6 e 720.

Após o algoritmo a seguir ser executado, o valor da variável soma1 será maior que o da variável soma2.


vetor a[7];

real soma1, soma2;

inteiro i;

a = [1,3,9,27,81,243,729];}

soma1 = 0;

i = 0;

enquanto (i < 7) faça

soma1 = soma1 + a[i]

i = i + 1

fim enquanto

soma2 = 1 * (1-3^7)/(1-3)


escreva(soma1)

escreva(soma2)


C

Certo


E

Errado

Considere que, na lógica do algoritmo feito no VisualG, sejam inseridos sequencialmente os valores a seguir: 7 8 3 1 0 2 5


Algoritmo "Alg1"

Var

num : real

res : real

soma : real

Inicio

soma <- 0

escreva("Digite um valor: ")

leia(num)

enquanto (num <> 0)faca

res <- res + num

escreva("Digite um valor: ")

leia(num)

fimenquanto

escreva("Resultado> ", res)

Fimalgoritmo


Nessa situação, será apresentado qual resultado da execução?


A

16


B

17


C

18


D

19

Considere os trechos de códigos a seguir:


I. int fatorial (int n) {

if (n<=1)

return 1;

else

return n*fatorial

(n-1);

}

II. int codigo(int vet[]){

int qtd, i, j, tmp;

qtd=0;

for (i=0; i<tamanho -1;

i++){

for (j=i+1;

j<tamanho; j++){

if

(vet[i]> vet[j]);


troca(&vet[i], &vet[j]);

}

qtd++;

}

}

return(qtd);

}


Considerando as informações apresentadas, informe se é verdadeiro (V) ou falso (F) para o que se afirma e assinale a alternativa com a sequência correta.


( ) O primeiro código tem a finalidade de calcular o fatorial de um número, portanto é recursivo.

( ) O primeiro e segundo código utilizam o método da bolha ou Buble sort, portanto não são recursivos.

( ) O primeiro e segundo código são exemplos de algoritmos recursivos.

( ) Os dois códigos são exemplos de algoritmos de ordenação.


A

F – F – F – F.


B

V – F – V – F.


C

V – V – F – F.


D

V – F – F – F.

Assinale a alternativa correta para verificar se uma string que armazena um endereço IP com 4 bytes dispõe de um número IP válido por meio de uma expressão regular.


A

\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b


B

\i\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\i


C

\b\u{1,3}\.\u{1,3}\.\u{1,3}\.\u{1,3}\b


D

\e\{1,3}\.\e{1,3}\.\e{1,3}\.\e{1,3}\b


E

Nenhuma das alternativas.

O quicksort é um dos algoritmos mais famosos de ordenação, o qual, por sua vez, é um tema bastante estudado na informática. Mas, qual a vantagem do quicksort afinal?


Assinale a alternativa que contém uma descrição correta sobre o algoritmo.


A

Apesar de não estável, o quicksort é um algoritmo rápido, cujas operações são realizadas sem a necessidade de vetor auxiliar, o qual ainda demanda um esforço computacional baixo, cujo caso médio é O(n log n).


B

Mesmo sendo estável, o quicksort é um algoritmo rápido, cujas operações são realizadas sem a necessidade de vetor auxiliar, o qual ainda demanda um esforço computacional baixo, cujo caso médio é O(log n).


C

Mesmo sendo estável, o quicksort é um algoritmo rápido, cujas operações são realizadas com uso de vetor auxiliar, o qual ainda demanda um esforço computacional baixo, cujo caso médio é O(n log n).


D

Mesmo sendo estável, o quicksort é um algoritmo rápido, cujas operações são realizadas com uso de vetor auxiliar, o qual ainda demanda um esforço computacional baixo, cujo caso médio é O(log n).


E

Apesar de não estável, o quicksort é um algoritmo rápido, cujas operações são realizadas com uso de vetor auxiliar, o qual ainda demanda um esforço computacional baixo, cujo caso médio é O(log n).

soma = 0

função a(x):

soma = 0

se (x <= 1) então

retorne 1

fim se

soma = soma + x + a(x - 1) + a(x - 2)

retorne soma

escreva(a(3))


Assinale a opção que apresenta o resultado correto para o pseudocódigo precedente.


A

17


B

1


C

4


D

8


E

13

Virgínia é analista de qualidade de software da DPE/RS e está verificando qual o melhor algoritmo de substituição de páginas para as aplicações da Defensoria. Os dados usados são:


Número da página

Bit referência

Bit modificação

1 (início)

1

0

2

1

1

3

0

0

4

0

1

5

0

0

6

1

0


Virgínia usou o Algoritmo de Segunda Chance Aperfeiçoado.


Considerando que não ocorrerá nenhuma nova execução ou modificação e que a partir desse momento só haverá a remoção das páginas, a sequência de remoção de páginas da memória principal identificada por Virgínia será:


A

3, 5, 1, 6, 2, 4;


B

3, 5, 2, 4, 6, 1;


C

3, 4, 5, 1, 2, 6;


D

3, 4, 6, 5, 1, 2;


E

3, 4, 5, 6, 1, 2.

No âmbito dos algoritmos, o que é diferente entre procedimentos e funções?


A

Funções retornam um valor, enquanto procedimentos não.


B

Procedimentos retornam um valor, enquanto funções não.


C

Procedimentos não executam nenhuma tarefa.


D

Funções não executam nenhuma tarefa.


E

Procedimentos e funções são a mesma coisa.

Observe o algoritmo abaixo.


algoritmo "UFJ"

var

M, N, K : inteiro

Inicio

M <- 25

N <- 15

para K de 0 ate 5 passo 2 faca

M <- M - 3

N <- N + 3

escreva (M:3,N:3)

fimpara

fimalgoritmo


Após a execução, esse algoritmo gera a seguinte saída:


A

22 18 19 21 16 24 13 27.


B

22 19 16 13 18 21 24 27.


C

22 27 19 24 16 21 13 18.


D

18 22 21 19 24 21 27 13.


E

18 21 24 27 22 19 16 13.

As variáveis X, Y, Z e Res, do tipo booleana (que podem apresentar valores do tipo Verdadeiro ou Falso), foram utilizadas dentro de um programa na seguinte lógica:


Res ← NOT ((X AND Y) OR (X AND Z))


Assinale a alternativa que apresenta uma combinação de valores para X, Y e Z que produza em Res um valor Falso.


A

X = Falso, Y = Falso e Z = Falso.


B

X = Falso, Y = Falso e Z = Verdadeiro.


C

X = Falso, Y = Verdadeiro e Z = Verdadeiro.


D

X = Verdadeiro, Y = Falso e Z = Falso.


E

X = Verdadeiro, Y = Verdadeiro e Z = Falso.

Em relação à geração de números aleatórios por computadores, analise as afirmativas abaixo.


I. Chama-se semente o número que inicia o algoritmo de geração de números pseudoaleatórios.

II. Os números comumente gerados por um computador como aleatórios são, na verdade, pseudoaleatórios, uma vez que há um algoritmo que gera esses números.

III. Caso o algoritmo gere em algum momento o número usado como semente, a sequência de números pseudoaleatórios deverá se repetir.

IV. Os computadores têm, internamente, um gerador de números verdadeiramente aleatórios.


Estão corretas as afirmativas:


A

I e II apenas


B

III e IV apenas


C

I, II, III e IV


D

I, II e III apenas


E

III apenas

Considere NUM como sendo um array (arranjo) indexado a partir de 0, cujo conteúdo numérico é formado por: 12, 25, 16, 11, 9, 31, 27, 27 e 22. O valor de NUM[ NUM[2] – NUM[4] ] – NUM[6] é


A

0


B

1


C

2


D

3


E

4

 
Ir para a página:
OK
 
Gerar simulado