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
 

// codigo 1

i = 1

fim = 7

enquanto i < fim faça

escreva(i)

i = i + 1

fim enquanto

depois = i


// codigo 2

fim = 6

i = 0

enquanto i < fim faça

i = i + 1

escreva(i)

fim enquanto

depois = i


Considerando a estrutura precedente, é correto afirmar que o código 1 e o código 2 apresentam o mesmo resultado.


C

Certo


E

Errado

Analise o algoritmo abaixo escrito em pseudocódigo (Portugol).


algoritmo "Questão"

var

a, b, c: inteiro

inicio

a ← 0

b ← 1

c ← 2

repita

a ← a + 1

b ← b + a * 2

c ← c + b - a

até_que (a > 2)

fimalgoritmo


Ao final da execução do algoritmo acima, qual serão, respectivamente, os valores das variáveis "a", "b" e "c"?


A

0, 1 e 2.


B

2, 7 e 9.


C

2, 12 e 15.


D

3, 13 e 19.


E

3, 30 e 37.

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


algoritmo "concurso"

var

cont1, cont2, tot: inteiro

inicio

tot := 1

para cont1 de 1 ate 3 faca

tot := tot * cont1

para cont2 de 1 ate cont1 faca

tot := tot + cont2

fimpara

fimpara

fimalgoritmo


Figura 1 – Algoritmo escrito no software VisuAlg 3.0


Qual será o valor da variável "tot" ao final da execução do algoritmo da Figura 1?


A

5


B

7


C

22


D

27


E

60

Temos diversas formas que podemos utilizar para representar um algoritmo.


Início

Leia N1, N2

Soma <- N1 + N2

Imagem associada para resolução da questão

Escreva

"Pagamento em dinheiro"

Escreva

"Pagamento em cartão"

Fim



A forma anterior, representa:


A

Pseudocodigo


B

Diagrama de Integração


C

Fluxograma


D

Diagrama de Chapin


E

Diagrama de Sequencia

Carlos trabalha como desenvolvedor de software e recebe a demanda de criar um trecho de código usando um loop de repetição que somente pode ser usado quando se sabe a quantidade de vezes que o loop vai acontecer. Selecione o loop de repetição que Carlos deve utilizar.


A

if


B

for


C

while


D

switch


E

do - while

Analise as afirmativas abaixo a respeito de Modularização de Algoritmos:


I. Refinamento Sucessivo denomina a busca por melhoria do algoritmo otimizando etapas e reduzindo o uso de variáveis dentro da solução dada ao problema.

II. Outro nome para a técnica de Refinamento Sucessivo é Top-Down.

III. O processo seguinte à decomposição do algoritmo em subproblemas (Top-Down) é sua recomposição agrupando os conceitos mais detalhados em níveis mais abrangentes, até o nível de abstração desejado.


Estão CORRETAS a(s) afirmação(ões):


A

I apenas.


B

II apenas.


C

III apenas.


D

II e III apenas.


E

Todas as afirmações estão corretas.

Considere o seguinte algoritmo.


var renda: real

início

leia(renda)

se (renda <= 1000)

então exiba("Categoria 1")

senão se (renda>1000 E renda<=2000)

então exiba ("Categoria 2")

senão exiba ("Categoria 3")

fim_se

fim_se

fim


Uma alteração que pode ser feita para otimizar ou melhorar o algoritmo, sem alterar sua lógica, é


A

trocar E por OU na segunda estrutura de seleção.


B

trocar o segundo senão por senão se (renda<=2000).


C

retirar o senão exiba ("Categoria 3").


D

retirar o trecho E renda<=2000 da segunda estrutura de seleção.


E

retirar o trecho renda>1000 E da segunda estrutura de seleção.

Considere o seguinte algoritmo “ALG1” (escrito via VisuAlg 3.07)


Algoritmo "ALG1"

Var

entrada : inteiro

resposta: inteiro

tst : inteiro


funcao calcule (aux: inteiro) : inteiro

inicio

tst <- 1

se (aux = 0) entao

retorne tst

senao

retorne aux + calcule (aux-1)

fimse

fimfuncao


Inicio

leia (entrada)

resposta <- calcule (entrada)

escreva (resposta)

Fimalgoritmo


Se for inserido como entrada o valor 14, será escrito como resposta o valor:


A

79


B

86


C

106


D

119

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


Início

Tipo M = matriz[1..3,1..3] de inteiros;

Inteiro: i, j, x;

M: Mat;

...

x ← 1;

Para i de 1 até 3 faça

[

Para j de 1 até 3 faça

[

Mat[i,j] ← i + 2*j + x;

]

x ← x + 1;

]

...

Fim.


Considerando a execução desse trecho de programa, o número de posições da matriz Mat que, ao final da execução, apresenta um valor maior ou igual a 10 é:


A

0


B

1


C

2


D

3


E

4

Observe-se o seguinte algoritmo, que utiliza as regras sintáticas da linguagem VisuAlg e foi implementado em pseudocódigo.


Algoritmo "Questao"

Var

v1, v2, v3, v4: Inteiro

r0: Logico

Inicio

v2 <- 8

para v1 de 2 ate v2 faca

v3 <- 2

r0 <- Falso

enquanto (v1<>v3) faca

v4 <- v1 MOD v3

v3 <- v3 + 1

se v4 = 0 então

r0 <- Verdadeiro

fimse

fimenquanto

se (Nao r0) então

escreva (" ", v1)

fimse

fimpara

Fimalgoritmo


Ao final da execução do algoritmo, serão escritos os seguintes valores referentes à variável v1:


A

2, 3, 5, 7


B

2, 4, 6, 8


C

2, 3, 4, 5, 6, 7


D

8, 7, 6, 5, 4, 3

Considere o paradigma divisão e conquista relacionado a algoritmos e avalie as sentenças a seguir de acordo com Cormen et al (2022).


Fonte: CORMEN, Thomas; et al. Algoritmos – Teoria e Prática. 3. ed. Rio de Janeiro: GEN, 2022.


I. A resolução de problemas ocorre recursivamente, em três etapas em cada nível: divisão, conquista e combinação.

II. A divisão ocorre com a separação do enunciado do problema em sentenças menores.

III. A conquista é a etapa de resolução recursiva dos subproblemas e, se eles forem pequenos o suficiente, são resolvidos de modo direto.

IV. Os subproblemas sempre são instâncias menores do mesmo problema.


É CORRETO apenas o que se afirma em:


A

I, II e III.


B

II, III e IV.


C

I e III.


D

II e IV.


E

I, II, III e IV.

As variáveis compostas homogêneas são conjuntos de variáveis do mesmo tipo, referenciáveis pelo mesmo identificador e alocadas sequencialmente na memória. Em relação aos tipos de variáveis compostas homogêneas, assinale a alternativa correta.


A

Matrizes são variáveis compostas unidimensionais; vetores são variáveis compostas multidimensionais.


B

Pilhas são variáveis compostas unidimensionais; ponteiros são variáveis compostas multidimensionais.


C

Vetores são variáveis compostas unidimensionais; matrizes são variáveis compostas multidimensionais.


D

Vetores são variáveis compostas unidimensionais; matrizes são variáveis compostas monodimensionais.


E

Ponteiros são variáveis compostas unidimensionais; pilhas são variáveis compostas multidimensionais.

Assinale CORRETAMENTE a definição de uma variável constante:


A

As constantes são valores imutáveis que são conhecidos no tempo de compilação e não são alterados durante a vida útil.


B

As constantes são valores mutáveis que são conhecidos no tempo de compilação.


C

As constantes são valores mutáveis que não são conhecidos no tempo de compilação.


D

As constantes são valores imutáveis que não são conhecidos no tempo de compilação.

Analise o trecho de código escrito abaixo:


rules <- apriori(Groceries, parameter=list(support=0.001,

confidence=0.6, target = “rules”))


Sobre o trecho de código acima, é correto afirmar que a função apriori() também pode ser utilizada para:


A

Agrupar regras.


B

Excluir regras existentes que estão acima do limiar confiança.


C

Gerar regras.


D

Alterar regras existentes para ficarem abaixo do limiar de suporte.


E

Classificar regras.

Considere a estrutura a seguir, representando a realização de operações lógicas em um programa.


var a, b, c, d: inteiro

var x, y, z: lógico

início

a ← 2

b ← 1

c ← 3

d ← 0

x ← NÃO(a + d > 0) E (c - b <= 5)

y ← NÃO(x) OU (c / a > 2)

z ← y E x E (c - b - a >= 0)

exiba (x, y, z)

fim


Em condições ideais, a instrução exiba (x, y, z) deve mostrar os valores


A

false, false e false.


B

false, true e false.


C

true, true e false.


D

false, true e true.


E

true, true e true.

Referente à notação O, considere as funções apresentadas abaixo e assinale a opção que apresenta, respectivamente, as funções na referida notação.


I -

II -

III - 404

IV -


A


B


C


D


E

Analise o algoritmo abaixo, escrito no software VisuAlg 3.0.


algoritmo "tecnico"

var

quantidade, soma, contador: inteiro


funcao acumulador(var_1: inteiro): inteiro

inicio

retorne soma + var_1

fimfuncao


inicio

soma <- 0

quantidade <- 0

repita

soma <- acumulador(quantidade)

quantidade <- quantidade + 2

até (quantidade > 10)

fimalgoritmo


Ao executar o algoritmo acima, quantas vezes será chamada a função "acumulador"?


A

2.


B

3.


C

5.


D

6.


E

10.

A Torre de Hanói consiste de 3 pinos A, B e C, denominados origem, destino e trabalho, respectivamente, e n discos de diâmetros diferentes. Inicialmente, todos os discos encontram-se empilhados no pino-origem, em ordem decrescente de tamanho, de baixo para cima. O objetivo é empilhar todos os discos no pino-destino, conforme as seguintes restrições:


I- apenas um disco pode ser movido de cada vez; e

Il- qualquer disco não pode ser jamais colocado sobre outro de tamanho menor.


Com base em Szwarcfiter (2010), considere a solução por recursão do problema da Torre de Hanói apresentada abaixo e assinale a opção que substitui os trechos 1 e 2, respectivamente.


procedimento hanoi(n, A, B, C)

Se n > O então

_____<trecho1>

______mover o disco do topo de A para B

_____<trecho2>


chamada externa: hanoi(n, A, B, C).


A

hanoi(n-1, A, C, B) e hanoi(n-1,C, B, A).


B

hanoi(n+1, C, A, B) e hanoi(n-1, B, C, A).


C

hanoi(n-1, B, C, A) e hanoi(n+1, A, B, C).


D

hanoi(n, A, c, B) e hanoi(n-1, C, B, A).


E

hanoi(n-1, C, A, B) e hanoi(n, B, C, A).

 
Ir para a página:
OK
 
Gerar simulado