

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
/
i = 1
fim = 7
enquanto i < fim faça
escreva(i)
i = i + 1
fim enquanto
depois = i
/
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.
Certo
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"?
0, 1 e 2.
2, 7 e 9.
2, 12 e 15.
3, 13 e 19.
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?
5
7
22
27
60
Temos diversas formas que podemos utilizar para representar um algoritmo.
Início | |
Leia N1, N2 | |
Soma <- N1 + N2 | |
| |
Escreva "Pagamento em dinheiro" | Escreva "Pagamento em cartão" |
Fim | |
A forma anterior, representa:
Pseudocodigo
Diagrama de Integração
Fluxograma
Diagrama de Chapin
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.
if
for
while
switch
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):
I apenas.
II apenas.
III apenas.
II e III apenas.
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, é
trocar E por OU na segunda estrutura de seleção.
trocar o segundo senão por senão se (renda<=2000).
retirar o senão exiba ("Categoria 3").
retirar o trecho E renda<=2000 da segunda estrutura de seleção.
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:
79
86
106
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 é:
0
1
2
3
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:
2, 3, 5, 7
2, 4, 6, 8
2, 3, 4, 5, 6, 7
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:
I, II e III.
II, III e IV.
I e III.
II e IV.
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.
Matrizes são variáveis compostas unidimensionais; vetores são variáveis compostas multidimensionais.
Pilhas são variáveis compostas unidimensionais; ponteiros são variáveis compostas multidimensionais.
Vetores são variáveis compostas unidimensionais; matrizes são variáveis compostas multidimensionais.
Vetores são variáveis compostas unidimensionais; matrizes são variáveis compostas monodimensionais.
Ponteiros são variáveis compostas unidimensionais; pilhas são variáveis compostas multidimensionais.
Julgue o item seguinte a respeito dos conceitos de algoritmo de ordenação.
O algoritmo merge sort ordena os elementos de um vetor percorrendo este diversas vezes e, a cada passagem, deslocando até o topo o maior elemento da sequência.
Certo
Errado
Assinale CORRETAMENTE a definição de uma variável constante:
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.
As constantes são valores mutáveis que são conhecidos no tempo de compilação.
As constantes são valores mutáveis que não são conhecidos no tempo de compilação.
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:
Agrupar regras.
Excluir regras existentes que estão acima do limiar confiança.
Gerar regras.
Alterar regras existentes para ficarem abaixo do limiar de suporte.
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
false, false e false.
false, true e false.
true, true e false.
false, true e true.
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 - 6x2n+5xn10
II - log n+3 x log n2+4 x log2 n
III - 404
IV - n2+2n+1
O(2n);O(log2 n);O(1);O(n2)
O(n10);O(log n2);O(404);O([n+1]2)
O(n2);O(log n2);O(1);O(n2)
O(n10);O(log2 n);O(404);2O(n+1)
O(2n);O(log2 n);O(c);O(n2+2n)
O tamanho em Bytes de uma variável do tipo Short int é de:
4 bytes.
2 bytes.
1 byte.
8 bytes.
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"?
2.
3.
5.
6.
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).
hanoi(n-1, A, C, B) e hanoi(n-1,C, B, A).
hanoi(n+1, C, A, B) e hanoi(n-1, B, C, A).
hanoi(n-1, B, C, A) e hanoi(n+1, A, B, C).
hanoi(n, A, c, B) e hanoi(n-1, C, B, A).
hanoi(n-1, C, A, B) e hanoi(n, B, C, A).