Questões de Concurso
Sobre algoritmos em algoritmos e estrutura de dados
Foram encontradas 2.316 questões
Para responder à questão, considere a estratégia de ordenação apresentada em Java abaixo.

Considere que há 3 categorias para pagantes de pensões alimentícias: a primeira engloba os que pagam até 1 valor base (R$ 900.00), a segunda os que pagam de 2 até 4 valores base e a terceira os que pagam acima de 4 valores base. Um programador apresentou o trecho em pseudocódigo abaixo como solução para identificar os pagantes destas 3 categorias.

Um Técnico Programador, ao analisar o trecho acima, afirma corretamente que
Considere o algoritmo em pseudocódigo abaixo.

Analisando a lógica do programa acima, é correto afirmar que
Analise o trecho de pseudocódigo a seguir.

Assinale a opção que exibe o conteúdo integral do resultado que
seria produzido numa hipotética execução desse código.
Analise o algoritmo a seguir.
|
algoritmo "IPERON" var X, Y, K : inteiro início X <- 13 Y <- 17 para K de 1 ate 3 faca X<-X+1 Y<- Y -1 escreva (X:3, Y:3) fimpara fimalgoritmo |
Após a execução, a saída gerada pelo algoritmo está indicada na seguinte opção de resposta:
Figura 5(a) - Algoritmo
Figura 5(b) - Variáveis e respectivos conteúdos Durante a execução do algoritmo, mostrado na Figura 5(a), serão atribuídas as variáveis lógicas "A", "B", "C", "D", "G", "H", "K", "L" e "M" os conteúdos constantes na Figura 5(b). Em consequência, executando-se esse algoritmo, serão exibidos os números:
C * (B – A) <= D – B / C
Qual seria o resultado da execução dessa expressão, caso o valor das variáveis fossem: A=3; B=6; C=2 e D=9 ?
I - Toda expressão que possui um operador relacional, necessariamente, tem como resultado um valor do tipo “lógico”. II - O operador “mod” (ou “%”) retorna o resto da divisão entre dois números. III - É adequado o uso de variáveis cujo tipo de dados seja “inteiro” para armazenar nomes de pessoas.
Assinale a alternativa CORRETA.
Se os nomes dos times fossem colocados em ordem (em um array), o número máximo de itens no array que a busca binária teria que examinar para encontrar a localização de um time em particular será, no pior caso, de
Dado um pseudocódigo de uma função chamada FN1:
FN1 (V[], início, fim, e)
i recebe o índice do meio entre início e fim
se (v[i] = e) entao
devolva o índice i # elemento e encontrado
fimse
se (inicio = fim) entao
não encontrou o elemento procurado
senão
se (V[i] vem antes de e) então
faça a FN1 (V, i+1, fim, e)
senão
faça a FN1 (V, inicio, i-1, e)
fimse
fimse
Sobre o pseudocódigo foram feitas as seguintes afirmações:
I. FN1 é uma função é iterativa
II. Para FN1 devolver o índice i corretamente, o vetor V[ ] precisa estar ordenado.
III. Se o vetor V[ ] tiver 1024 elementos, podemos expressar que o número de suposições, no pior caso, como "o número de vezes que podemos reduzir pela metade, começando em n, até obter o valor 1, mais um" será de 11.
IV. A função matemática que representa a complexidade de FN1 é da ordem de log n.
Estão corretas
Considere o código-fonte abaixo, desenvolvido na linguagem de programação “Portugol”:

O número visualizado ao final da execução deste código-fonte é
Considere a seguinte expressão lógica, a ser inserida em um programa.
R ← ((A and B) or (C and D)) or E
As variáveis A, B, C, D, E e R são do tipo booleano, podendo assumir valores verdadeiro (1) ou falso (0).
Assinale a alternativa que apresenta valores para A, B, C, D e E que resultem o valor falso (0) em R.
Considere o seguinte algoritmo:
Para i de 7 até 4 Faça
aux <- v[i]
v[i] <- v[7 - i]
v[7 - i] <- aux
i <- i - 1
Fim_Para
max = maior v
v[2] <- v[0]
v[max - v[2]] <- v[max - v[1]]
Assinale a alternativa que possui o estado final do vetor v inicialmente definido com os elementos de 32 a 39.
Considerando o algoritmo abaixo, assinale a alternativa correta.

Considere o algoritmo abaixo.
static int fibonacci(int n) {
if (n <= 1) {
return n;
}
return fibonacci(n - 2) + fibonacci(n - 1);
}
A complexidade deste algoritmo, na notação Big O, é
Analise as afirmativas a seguir a respeito de algoritmos recursivos.
I. Diz-se que uma rotina é recursiva se a sua definição envolver uma chamada a ela mesma. Neste sentido, o termo recursão é equivalente ao termo indução utilizado por matemáticos.
II. Cada algoritmo recursivo possui um algoritmo iterativo equivalente e vice-versa, mas que pode ter mais ou menos complexidade em sua construção.
III. Uma função recursiva possui duas partes: caso base e caso recursivo.
IV. Um algoritmo pode ser chamado de iterativo quando ele requer a repetição implícita de um processo até que determinada condição seja satisfeita.
V. A recursividade possibilita a escrita de um código mais enxuto, com maior legibilidade e simplicidade.
Assinale a alternativa que possui alguma afirmação INCORRETA.
O trecho de algoritmo a seguir corresponde ao método de ordenação do tipo:
