Questões de Concurso sobre Algoritmos e estrutura de dados - Página 22 | Gran Questões

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
 

Considere o algoritmo em pseudocódigo a seguir:


← é o comando de atribuição

% é o resto de divisão inteira


início

inteiro x

inteiro y

inteiro z

x ← 100

z ← 3

x ← x + 40

y ← 5 z * 4

enquanto (z <= 7) faça x

x ← x – 15

se x % 2 = 0 então

z ← z + 1

se não

z ← z + 2

fim se

y ← y + z - x

fim enquanto

escreva x, y, z

fim


Assinale a alternativa que apresenta CORRETAMENTE os valores impressos pelo algoritmo:


A

95, 276, 8.


B

95, 189, 8.


C

80, 189, 7.


D

110, 276, 6.

Observe a função xpto especificada em pseudocódigo, exibida a seguir.


function xpto(x as real) as real

var i as integer;

var soma as real;

var termo as real;


soma = 1 + x;

termo = x;

for i = 3 to 6 step 1

begin

termo = termo * x / (i-1);

soma = soma + termo;

end;

return soma;


O valor retornado pela função é obtido pelo cálculo da expressão


A


B


C


D


E

O método de ordenação conhecido por merge sort é usualmente implementado de maneira recursiva e realiza o ordenamento basicamente separando o vetor de dados em análise em duas partes, até que haja a comparação de apenas dois elementos para se verificar se há a necessidade de troca da posição. Depois, também de maneira recursiva, esses elementos vão sendo novamente reagrupados até que o vetor seja retornado na ordem ascendente ou descendente, conforme o interesse, como esquematizado na figura a seguir.


Imagem associada para resolução da questão


Fonte: IFSP, 2022.


Considerando o trecho de código a seguir e o vetor B=[10, 9, 8, 7, 6, 5, 4, 3, 2, 1], é correto afirmar que, no print(A) da linha 7 com o ordenamento ascendente do vetor B, a resposta da sua saída será:


1

defmergesort(A, aux,esquerda, direita):

2

if direita <= esquerda:

3

return

4

meio = (esquerda + direita) // 2

5

# Ordenaa primeira metade do arranjo.

6

mergesort(A, aux,esquerda, meio)

7

print(A)

8

# Ordenaa segunda metadedo arranjo.

9

mergesort(A, aux,meio + 1, direita)

10

# Combina as duas metades ordenadas anteriormente.

11

merge(A, aux,esquerda, meio, direita)



A

[9, 10, 8, 7, 6, 5, 4, 3, 2, 1]


B

[10, 9, 8, 6, 7, 5, 4, 3, 2, 1]


C

[10, 9, 8, 7, 6, 4, 5, 3, 2, 1]


D

[10, 9, 8, 7, 6, 5, 4, 3, 1, 2]

Em algoritmos de busca, considere o vetor de busca como aquele que possui os elementos em que a busca será realizada. Sejam as seguintes afirmações sobre algoritmos de busca:


I - O vetor de busca deve estar ordenado antes da busca.

II - A busca somente pode ocorrer se os elementos forem numéricos.

III - A complexidade do algoritmo é da ordem de n2 (quadrado de n), em que n é a quantidade de elementos do vetor de busca.


Se o algoritmo for o algoritmo de busca binária, aplica(m)- se


A

a afirmação I.


B

a afirmação II.


C

as afirmações I e II.


D

as afirmações II e III.

A abordagem do matemático e educador de Seymour Papert que considera o computador como meio para aquisição autônoma de conhecimento é denominada:


A

Abordagem construcionista.


B

Abordagem científica.


C

Abordagem computacional.


D

Abordagem instrucionista.


E

Abordagem tecnológica.

Na construção de algoritmos estruturados são utilizadas estruturas de controle, como a conhecida por REPITA ... ATÉ ... FIM REPITA. Neste contexto, NÃO é uma afirmativa válida para essa estrutura de controle:


A

A condição de teste da estrutura é inserida no INÍCIO da estrutura de controle.


B

A condição de teste da estrutura é inserida no FIM da estrutura de controle.


C

A saída do loop ocorre quando o teste da condição de controle retorna valor VERDADEIRO.


D

A execução do programa permanece no loop se o teste da condição de controle retorna valor FALSO.

Considere as situações simplificadas abaixo (|| indica concatenação).


Algoritmo 1: utiliza uma função hash com poucos bits sobre o bloco de dados que será enviado e uma chave secreta que é compartilhada. O bloco de dados e o hash é enviado ao receptor. O receptor anexa a mesma chave secreta compartilhada ao bloco de dados e calcula a mesma função hash. Mas ocorre colisão na função hash e duas mensagens diferentes resultam como iguais... alguém explora essa vulnerabilidade e modifica os dados, mesmo sem saber a chave, e os entrega ao receptor, que os recebe achando serem os legítimos. Funciona assim:

H(chave || dados1) = H(chave || dados2)


Algoritmo 2: funções hash mais avançadas são utilizadas e novos critérios de segurança são adicionados. Isso resulta que nenhum ataque conhecido permite que um invasor modifique os dados e tenha o mesmo valor sem conhecer os valores das chave1 e chave2 (pública e secreta). Funciona assim: HNovo =

H(chave1 || H(chave2 || dados))


As situações que envolvem os algoritmos 1 e 2 correspondem, correta e respectivamente, a


A

TLS/MAC – SSL/HMAC.


B

SSL/MD5 – SSL/SHA-1.


C

HTTPS – HTTP.


D

SSL/MAC – TLS/HMAC.


E

TLS/HTTP – TLS/HTTPS.

É fornecido a seguir um algoritmo expresso na forma de uma pseudolinguagem (português estruturado).


Início

Inteiro: x, y, z, j;

Leia x, y;

z ← 19;

Para j de 1 até 3 faça

[

Se z > (x+y)

Então

z ← z - 3;

Senão

z ← z + 5;

]

z ← z + z;

Imprima z;

Fim.


Considerando os valores lidos para as variáveis x e y como sendo 8 e 9, respectivamente, então o valor impresso para a variável z no final do algoritmo é:


A

42


B

36


C

32


D

48


E

40

Imagem associada para resolução da questão

-

De acordo com fluxo do processo descrito na figura precedente, assinale a opção correta.


A

Caso a tarefa “preparar viagem” esteja sendo executada e seja interrompida, será realizada uma pausa aguardando a “data de início da viagem”, para daí continuar para a tarefa “realizar viagem”.


B

Quando “preparar viagem” for encerrada, será realizada uma pausa aguardando a “data de início da viagem”, para daí continuar para a tarefa “realizar viagem”.


C

Caso a tarefa “preparar viagem” esteja sendo executada e seja interrompida, o fluxo seguirá até que “data de início da viagem” seja finalizada.


D

Enquanto a tarefa “preparar viagem” estiver sendo executada, será analisado concomitantemente o gateway “data de início da viagem”, para daí continuar para a tarefa “realizar viagem”.

ALGORITMO ordem


ENTRADA: um vetor V com N posições

SAÍDA: o vetor V em ordem crescente


PARA i = 1 até n - 1

PARA j = 0 até n – 1 - i

SE V[ j ] > V[ j+1 ]

AUX = V[ j ]

V[ j ] = V[ j+1 ]

V[ j+1 ] = AUX

FIM {ordem}


O método de ordenação utilizado no algoritmo precedente denomina-se


A

shellsort.


B

inserção.


C

bolha.


D

quicksort.


E

seleção.

O algoritmo abaixo utiliza os conceitos de passagem de parâmetros, sendo de SD para X por referência; de NR para Y e de VL para W por valor.


algoritmo "PREF_PL"

var

SD : caracter

NR : inteiro

VL : logico

procedimento PROC_PL (var X:caracter;Y:inteiro;W:logico)

inicio

X <- "BURITI"

Y <- 2021

W <- VERDADEIRO

fimprocedimento

inicio

SD <- "GUAPORÉ"

NR <- 2023

VL <- FALSO

PROC_PL(SD,NR,VL)

se VL = VERDADEIRO então

NR <- 2022

fimse

escreval ("SD - ,SD:10," NR - ",NR:4," VL - ",VL)

fimalgoritmo


Nessas condições, ao final da execução, os valores para SD, NR e VL serão, respectivamente:


A

GUAPORÉ, 2023 e VERDADEIRO


B

BURITI, 2022 e VERDADEIRO


C

GUAPORÉ, 2022 e FALSO


D

BURITI, 2023 e FALSO

No contexto da análise de conformidade de textos manipulados por computadores, considere as afirmativas a respeito do processo conhecido como parsing.


I. Denota o processo que analisa a semântica dos comandos presentes no texto de um programa.

II. Baseia-se numa gramática formal.

III. Não é aplicável na análise de estruturas de dados.


Está correto que se afirma somente em


A

I.


B

II.


C

III.


D

I e II.


E

II e III.

Na lógica de programação, um algoritmo é conceituado como uma sequência estruturada e organizada de passos que tem por objetivo atingir um objetivo, seja ele definido ou indefinido.


C

Certo


E

Errado

Analise a imagem abaixo para responder à questão 19.


Imagem associada para resolução da questão


A figura acima apresenta a representação de um algoritmo sob forma de um(a)


A

fluxograma.


B

pseudocódigo.


C

declaração de variável.


D

síntese.

Muitos cientistas de computação consideram a ordenação o problema mais fundamental no estudo de algoritmos. Analise o código a seguir e assinale a alternativa que melhor define esse tipo de ordenação.


para i = 1,…n faça

___ para j = 0, … n-1 faça

_____ se L[j].chave > L[j+1].chave então

_______ troca(L[j],L[j+1])



A

Quick sort.


B

Bubble sort.


C

Heap sort.


D

Insertion sort.


E

Selection sort.

Dada a função para encontrar um nome em uma listbox:


function TFMain.Busca_Bin(n : longint; nome :________): longint;

var

l,r,k : longint;

meio :_____;

achou :______;

begin

l := 0;

r := n-1;

achou := false;

while(l<=r) and (not achou) do

begin

meio := (l+r)/2;

k:=Trunc(meio);

if( nome=listbox11.items[k] ) then

achou := not achou

else

if( x<listbox11.items[k] ) then

r := k-1

else

l := k+1;

end;

if( achou ) then

Busca_Bin:=k

else

Busca_Bin:= -1;

end;


Os tipos de variáveis que deverão ser usados para as variáveis identificadas como nome, meio e achou são, respectivamente,


A

TListbox, real e boolean.


B

TText, float e boolean.


C

String, real e boolean.


D

String, float e int.

A respeito das estruturas de dados e algoritmos amplamente utilizados na execução de operações de busca e indexação, analise as afirmativas abaixo e marque alternativa correta.


I. Busca sequencial é a mais elementar de todas as buscas. Considerando a busca em uma estrutura de dados com informações ordenadas, a busca sequencial será sempre menos eficiente do que a busca binária, no pior caso. A busca binária se beneficia do fato da estrutura de dados estar ordenada, isso facilita sua estratégia de busca.

Il. As funções hash são usadas para mapearmos grandes conteúdos de informações que, mesmo tendo tamanho variável, retornaram como resultado informações de pequeno porte e de tamanho fixo. Tratam-se de funções probabilísticas, ou seja, devem resultar sempre no mesmo valor toda vez que receberem um mesmo dado como entrada.

Ill. Árvores AVL possuem como uma de suas características O fato de serem balanceada. Isso significa que a altura sub árvore esquerda de qualquer nó tem a mesma altura da sua sub árvore direita.


A

Apenas as afirmativas I e Il estão corretas.


B

Apenas a afirmativa I está correta.


C

Apenas a afirmativa Ill está correta.


D

Apenas as afirmativas II e Ill estão corretas.


E

Todas as afirmativas estão corretas.

 
Ir para a página:
OK
 
Gerar simulado