Questões de Concurso sobre Algoritmos e estrutura de dados - Página 26 | 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.152 questões encontradas
Questões por página
20
Mais recentes
 

programa {

funcao inicio() {

inteiro vetor[] = { 81, 37, 51, 77, 19 }

inteiro naosei

logico achou = verdadeiro

enquanto (achou)

{

achou=falso

para (inteiro i = 0; i <4; i++)

{

se (vetor[i] > vetor[i+1])

{

naosei = vetor[i]

vetor[i] = vetor[i+1]

vetor[i+1] = naosei

achou = verdadeiro

}

}

}

para (inteiro i = 0; i < 5; i++)

{

escreva (vetor[i]+ "\n")

}

}

}


Assinale a opção que apresenta o resultado do algoritmo apresentado.


A

81

37

51

77

19


B

81

51

37

17

19


C

19

37

51

77

81


D

51

81

37

77

19


E

19

77

37

81

51

Relacione as colunas quanto às funções de cada trecho de código. Em seguida, assinale a alternativa com a sequência correta


1 - para a de 1 até 150 passo 1 faça

leia e[a]

fim_para


2 – para a de 1 até 150 passo 1 faça

escreva f[a]

fim_para


3 – para a de 1 até 150 passo 1 faça

i ← e[a] div 5

se (i = 0) então

f[a] ← e[a] + 7

senão

f[a] ← e[a] + 12

fim_se

fim_para

( ) Leitura de cada um dos 150 valores da matriz.


( ) Criação da matriz com as seguintes premissas:

• caso o elemento seja divisível por 5, somar 7 a seu valor;

• senão, somar 12 a seu valor.


( ) Apresentação da matriz resultante.


A

3 - 1 - 2


B

1 - 2 - 3


C

1 - 3 - 2


D

2 - 3 - 1

Os algoritmos são amplamente utilizados na área da ciência da computação, desde a definição das instruções realizadas pelo hardware – processadores e demais dispositivos –, passando pelas operações executadas pelo sistema operacional no gerenciamento dos computadores, até́ a documentação das operações necessárias à elaboração de soluções voltadas para a construção de interfaces entre software e hardware, programas e demais aplicativos.


É CORRETO afirmar que o tipo de algoritmo que apresenta a solução do problema por meio de um diagrama de quadros com uma visão hierárquica e estruturada é:


A

Pseudocódigo.


B

Descrição Narrativa.


C

Diagrama de Chapin.


D

Fluxograma.


E

Português Estruturado.

Considere um processo de ordenação dos elementos do array [16,8,6,14,12,4] em ordem crescente. Supõe-se um algoritmo que percorra o array repetidamente até que esteja ordenado, sem utilização de memória auxiliar para os elementos do array (in place).


A lista a seguir mostra a disposição dos elementos no array após cada ciclo de iteração.


[8, 6, 14, 12, 4, 16]

[6, 8, 12, 4, 14, 16]

[6, 8, 4, 12, 14, 16]

[6, 4, 8, 12, 14, 16]

[4, 6, 8, 12, 14, 16]


Nesse caso, é correto concluir que foi utilizado o algoritmo:


A

Bubble Sort;


B

Insertion Sort;


C

QuickSort;


D

Selection Sort;


E

Shellsort.

Para verificar a integridade de um arquivo, um analista de informática realizou um cálculo sobre ele no momento de sua criação, o que gerou um resultado de tamanho fixo. Anos depois, para ter certeza de que o arquivo não havia sido modificado, ele realizou novamente o cálculo, gerando, da mesma forma, um resultado de tamanho fixo. Comparou então os dois valores gerados e verificou que eram iguais, concluindo que o arquivo permaneceu íntegro naquele período de tempo.


Com base nessa situação hipotética, é correto afirmar que o cálculo deve ter sido realizado por algoritmos de hash, como:


A

SHA-1; SHA-256; e MD5.


B

AES; blowfish; e RC4.


C

DES; 3DES; e IDEA.


D

RSA; DAS; e ECC.


E

RSA; AES; e SHA-256.

Na construção de algoritmos, os Identificadores representam os nomes escolhidos para rotular as variáveis, procedimentos e funções, e obedecem regras específicas. As variáveis são declaradas de diversos tipos, conforme as regras listadas a seguir.


I. qualquer número real, negativo, nulo ou positivo.

II. qualquer número inteiro, negativo, nulo ou positivo.

III. armazena apenas os valores V e F, onde V representa VERDADEIRO e FALSO

IV. armazena qualquer conjunto de caracteres alfanuméricos. Podendo ser uma cadeia de caracteres de qualquer tamanho. Caso seja imprescindível para o entendimento pode-se acrescentar, entre parênteses, a quantidade máxima de caracteres.


Os tipos definidos em I, II, III e IV são conhecidos, respectivamente, como


A

numérico, float, byte e boolean


B

real, inteiro, lógico e string


C

real, integer, lógico e literal


D

byte, short int, numérico e float

Há três tipos de algoritmos considerados como os mais comuns. Um deles “analisa o enunciado do problema e escreve, utilizando uma linguagem natural, os passos a serem seguidos para sua resolução”. Trata-se de:


A

Refinamento.


B

Recursividade.


C

Descrição narrativa.


D

Pseudocódigo ou Portugol.

Para desenvolver um programa deve-se cumprir algumas etapas; uma delas se trata de determinada ferramenta tipo descrição narrativa, que faz uso de algumas técnicas para descrever o problema e suas soluções. Assinale-a.


A

Análise.


B

Execução.


C

Algoritmo.


D

Codificação.

O programa a seguir, expresso na forma de uma pseudolinguagem, possui três loops. Analise a execução do algoritmo.


Início

[

Inteiro a, i, j, k;

a ← 0;

Para i de 1 até 4 faça

[

Para j de 1 até 3 faça

[

Para k de 1 até 5 faça

[

a ← a + 1;

]

a ← a - 1;

]

a ← a - 1;

]

a ← a - 1;

] Fim.


Ao final da execução do algoritmo, o valor da variável a será igual a:


A

41


B

42


C

43


D

44


E

45

Considere o algoritmo abaixo:


Algoritmo Exemplo

Var v: vetor [0..7]: inteiro

Var n, p, u, a: inteiro

Início

Para p de O até 7 passo 1 faça

leia (n)

v[p] n

Fim_para

p 0

u 8

Enquanto (u < > 2) faça

Enquanto (p < > (u-1)) faça

Se (v[p] > v[p+1]) então

a v[p]

v[p] v[p+1]

v[p+1] a

Fim_se

p p+1

Fim_enquanto

p 0

U U-1

Fim_enquanto

Fim


Caso v receba os valores 15, 25, 4, 10, 54, 32, 29 e 44, nessa ordem, após a execução de todos os laços de repetição do algoritmo, assinale a opção que apresenta os valores das posições 4 e 5 do vetor v respectivamente:


A

15 e 4.


B

25 e 44.


C

29 e 32.


D

32 e 44.


E

29 e 15.

Analise as afirmações, a seguir, a respeito dos TAD (Tipos abstratos de dados):


I - Um TAD especifica o tipo de dado (domínio e operações) sem referência a detalhes da implementação.

II - Dando mais liberdade para mudar implementação com menor impacto nos programas.

III - Oferece muitas vantagens, apesar de não minimizar custos.

IV - Os programas que usam o TAD não "conhecem" as implementações dos TADs.


Estão corretas as afirmações:


A

I e III.


B

II, III e IV.


C

I, II e III.


D

I, II e IV.

No contexto da metodologia empregada na construção de algoritmos, observe o pseudocódigo abaixo, referente a um algoritmo.


algoritmo "ALG123"

var

-F, H, K : inteiro

inicio

-F <- 17

-H <- 13

-para K de 1 ate 3 faca

--F <- F - 1

--H <- H + 1

--escreva (F:3,H:3)

-fimpara

fimalgoritmo


Após a execução, a sequência de números de saída é


A

16 16 15 15 14 14


B

16 14 15 15 14 16


C

16 15 14 14 15 16


D

14 14 15 15 16 16

Fluxograma é uma representação esquemática de um processo ou algoritmo, e são representados por alguns símbolos. Sobre o assunto, relacione as colunas a seguir:


Coluna 1

Coluna 2

I.Imagem associada para resolução da questão

A. Conector

II.Imagem associada para resolução da questão

B. Documento

III.Imagem associada para resolução da questão

C. Operação manual


Assinale a alternativa que apresenta a relação correta entre as Colunas 1 e 2:


A

I-C, II-B, III-A


B

I-A, II-B, III-C


C

I-B, II-A, III-C


D

I-C, II-A, III-B

O pseudocódigo a seguir apresenta o corpo de uma função.


int func(int n)

{

if (n <= 1)

{

return n

}

return func(n-1) + func(n-2)

}


Caso essa função seja chamada recebendo como entrada o valor 10, qual será o valor retornado pela função?


A

89


B

1


C

21


D

34


E

55

O gerente de uma agência bancária recebe, diariamente, solicitações de seus clientes com dúvidas sobre a melhor decisão para aplicações financeiras e as armazena, com um código numérico crescente, num vetor de solicitações, para respondê-las ao final do expediente. Para manter o conceito de bom atendimento, o gerente gostaria, sempre que possível, que a ordem das respostas seguisse, estritamente, a ordem de chegada das solicitações. Entretanto, há casos em que é necessário, por motivos de emergência ou por prioridade legal, localizar determinado código numérico para atender à solicitação correspondente antes das demais, “furando” a fila de espera. O gerente solicitou, então, à equipe de TI do banco, uma proposta que conciliasse essas duas necessidades. Ao estudar o problema, a equipe de TI concluiu que uma solução que mapearia diretamente essa necessidade da gerência seria permitir a realização de uma busca binária sobre o vetor de solicitações ordenado pelos seus códigos numéricos.


Verificando a viabilidade dessa sugestão, o grupo de TI calculou que, se considerar a existência de N solicitações, a quantidade de iterações necessárias para localizar determinado código numérico no vetor de solitações, utilizando a busca binária, no pior caso, é


A

[log2 N], em que a notação [x] significa maior inteiro menor ou igual a x


B

1 + [log2 N], em que a notação [x] significa maior inteiro menor ou igual a x


C

1 + [log2 N], em que a notação [x] significa menor inteiro maior ou igual a x


D

2N


E

2N-1

Analise o algoritmo abaixo. Assumindo que NUMERO = 3, qual o resultado do algoritmo?


Algoritmo

declare M[1:5] numérico

declare I numérico

leia NUMERO

I ← 1

repita

se I > 5

então interrompa

fim se

M[ I ] ← NUMERO

I ← I + 1

fim repita

escreva M[1], M[2] ... M[5]

fim algoritmo


A

1, 2, 3, 4, 5


B

3, 3, 3, 3


C

0,1 ,2 ,3, 4


D

1, 1, 1, 1, 1


E

3, 3, 3, 3, 3

Observe o algoritmo a seguir:


algoritmo "CE"

var

_M,N, K: inteiro

início

_M<- 17

_N<-23

para K de 1 ate 5 faca

__M<-M+1

__N<-N-1

__escreva (M:3,N:3)

fimpara

fimalgoritmo


Ao final da execução, será impressa a seguinte série de números:


A

18 18 19 19 20 20 21 21 22 22.


B

18 22 19 21 20 20 21 19 22 18.


C

22 18 21 19 20 20 19 21 18 22.


D

22 22 21 21 20 20 19 19 18 18.

O algoritmo abaixo contém a função FNC21(X).


algoritmo "EMGEPRON"

var

N, S : inteiro

funcao FNC21(X:inteiro) : inteiro

inicio

N <- N+1

se X <= 1 entao

retorne 3

senao

retorne 3*FNC21(X-1)+2*FNC21(X-2)

fimse

fimfuncao

inicio

N <- 3

S <- FNC21 (N)

escreval("N = ",N:4," S = ",S:4)

fimalgoritmo


Após a execução, as variáveis N e S mostrarão, respectivamente, os seguintes valores:


A

5 e 15


B

5 e 51


C

8 e 15


D

8 e 51

Considere o pseudocódigo abaixo, que define uma função que recebe dois arrays, A1, A2, cada um com N elementos indexados a partir de 1, e retorna o número de elementos do array A1 que não aparecem em A2.


function xpto(A1, A2, N)

contagem=0

for i=1 to N

flag=0

for j=1 to N

if A1[i] == 0 A2[j] then flag=1

if flag == 0 then contagem=contagem + 1

return contagem


Exatamente como foi codificado, o algoritmo da função xpto tem complexidade


A

O(1)


B

O(n)


C

O(2.n)


D

O(n2)


E

O(2.n2)

 
Ir para a página:
OK
 
Gerar simulado