Questões de Concurso
Comentadas sobre algoritmos em algoritmos e estrutura de dados
Foram encontradas 1.554 questões
Julgue o item a seguir, relativo a algoritmos de linguagem de programação.
O pseudocódigo consiste em um texto estruturado com
comandos escritos em linguagem humana, no qual se apoia a
criação dos algoritmos computacionais.
Julgue o item a seguir, relativo a algoritmos de linguagem de programação.
As funções predefinidas nas linguagens de programação
devem ser modificadas pelo desenvolvedor do sistema, de
forma a adaptá-las aos tipos de dados que se quer utilizar.
I. É direta e não requer o uso de parênteses para indicar a ordem das operações. II. Coloca os operadores após os operandos. III. É uma notação obsoleta que não é mais usada em programação. IV. É usada apenas para expressões lógicas, não para expressões matemáticas.
Está correto o que se afirma em
1. Bubble Sort. 2. Merge Sort. 3. Quick Sort. 4. Selection Sort. 5. Insertion Sort.
( ) Divide a lista em sublistas menores; ordena essas sublistas e as mescla para obter a lista ordenada.
( ) Algoritmo de comparação que percorre repetidamente a lista; compara elementos adjacentes e troca-os se estiverem na ordem errada.
( ) Divide a lista em duas partes; ordena-as individualmente e combina-as para obter a lista ordenada.
( ) Algoritmo que seleciona iterativamente o elemento mínimo da lista e coloca-o na posição correta.
( ) Algoritmo de comparação que escolhe um elemento como pivô; divide a lista em dois subconjuntos e ordena-os recursivamente.
A sequência está correta em
(_) Uma das operações básicas sobre um registro de um arquivo é a inclusão.
(_) O merge corresponde à intercalação dos registros de um arquivo.
(_) Uma vez concluída a operação de inclusão do arquivo, não é possível praticar sua exclusão.
O trecho acima diz respeito a(o):
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):
Segundo Manzano & Oliveira (2016), um laço incondicional, entre outras coisas, é um tipo de laço que é iterativo, porém não é interativo e tem seu funcionamento controlado por uma variável denominada contador. Com essa descrição, o autor se refere ao laço do tipo:
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).
I- + (mais). II- ou. III- não. IV- < (menor). V- = (igual).
São operadores lógicos:
A ___________________________, também conhecida como de decisão ou seleção, caracteriza-se pela execução de determinados códigos de programação dependendo da veracidade de uma condição.
– Analise o algoritmo abaixo escrito em pseudocódigo (Portugol).
algoritmo "Somatório"
var
soma, contador: inteiro
inicio
soma ← 0
contador ← 1
enquanto (contador <= 8) faça
soma ← soma + contador
contador ← contador * 2
fimenquanto
fimalgoritmo
Ao final da execução do algoritmo acima, qual será o valor da variável "soma"?
Considere o algoritmo K-Means. Suponha os seguintes pontos: x1=(1,2,5); x2=(3,4,2); x3=(9,5,3); x4=(7,6,1); x5=(2,3,5); x6=(8,7,2). Escolha x1 e x4 como centros iniciais.
Assinale a opção que apresenta corretamente os pontos em que seriam formados os grupos após a primeira iteração e quais seriam os novos centros.
Seja o algoritmo abaixo, construído via VisuAlg 3.0.7, no qual a função int (arg) retorna à parte inteira de arg:
Algoritmo "ALG1"
Var
-f, g, i, j, I : inteiro
-h: real
Inicio
-g <- 0
-h <- 0
-i <- 0
-j <- 1
-leia (f)
-enquanto (f <> 0) faça
---g <- g + f
---i <- i + 1
---leia (f)
-fimenquanto
-h <- f / i
-I <- int (h)
-enquanto (l>0) faça
---j <- g * I
---I <- I -1
-fimenquanto
-escreva (j)
Fimalgoritmo
Caso sejam fornecidas as seguintes entradas para f: 2, 3, 4, 5 e 0; o valor final de j, que será escrito como resposta, é:
A lógica matemática é uma área de estudo que utiliza sistemas formais para representar, analisar e inferir informações sobre o mundo real. As funções de avaliação são uma parte importante da lógica matemática, pois permitem avaliar se uma fórmula lógica resulta em um retorno verdadeiro ou falso. Considere a seguinte fórmula lógica e seu respectivo conjunto de atribuições de variáveis:
Fórmula lógica:
∀x (P(x) → Q(x))
Conjunto de atribuições de variáveis:
P(x)={a, b, c}, Q(x)={b, c, d}
Analise o pseudocódigo abaixo, que tenta retornar a verdadeiro ou falso para a fórmula lógica usando as atribuições de variáveis fornecidas:
função avaliar_fórmula(P, Q)
para cada elemento x em P
se x está em P e x não está em Q
retornar falso
retornar verdadeiro
Qual é o resultado da execução do algoritmo, considerando o contexto descrito na questão?
Algoritmos de ordenação são técnicas fundamentais na área da computação e são utilizados para organizar e ordenar coleções de dados, como listas ou arrays, de acordo com critérios específicos. Esses algoritmos têm uma ampla gama de aplicações em sistemas computacionais e são essenciais para a eficiência e eficácia de processos, nas mais diversas áreas do mundo do trabalho. Considere o algoritmo de ordenação ilustrado no pseudocódigo abaixo:
função sort(lista, esquerda, direita)
se esquerda < direita
pivo_index = particionar(lista, esquerda, direita)
sort(lista, esquerda, pivo _index - 1)
sort(lista, pivo_index + 1, direita)
função particionar(lista, esquerda, direita)
pivo = lista[direita] # escolhendo o pivo como último
elemento
i = esquerda - 1
para j de esquerda até direita -1
se lista[j] <= pivo
i=i+ 1
trocar(lista[i], lista[j])
trocar(lista[i + 1 ], lista[direita]) # colocando o pivo em sua
posição correta
retornar i + 1
# Inicializando o algoritmo com os índices apropriados
lista= [valores a serem ordenados]
sort(lista, 0, comprimento(lista)-1)
Qual das alternativas abaixo corresponde ao algoritmo em questão?