Escolar Documentos
Profissional Documentos
Cultura Documentos
Grupo de 1 a 4 pessoas
Integrantes por ordem de RGM
RGM Nome
Renan da Silva Ferreira 20847327
Felipe José Varollo 20859058
Larissa da Silva Pereira 26243971
1) Considerando o algoritmo abaixo e as operações primitivas estudadas em
sala (atribuição, chamada de função, acesso ao elemento de um arranjo,
operações aritméticas, retorno de função e comparação entre dois
elementos).
Pede-se:
a) O que faz o algoritmo enigma?
Resposta: O algoritmo "enigma" verifica se os elementos de A[ ] são divisíveis
por 4 e por 5. Se sim, soma eles na variável a. Retorna todos os elementos de
A[ ] divisíveis por 4 e por 5 somados.
fim-se 4 + ∑ 1+ 10∑ 1
fim-para i=1 i=1
retorna a; 4 + n+1 + 10n
5 + n + 10n
11n + 5
n ≤ 11n + 5 ≤ 4n
portanto, f(n) = Θ(n)
n n
∑ ❑i + ∑ ❑1
i=1 i=1
4 n ² +2 n−n ²−n
= 2
= (3n² + n)/2 = n(3n + 1)/2
Pede-se:
a) Qual a funcionalidade do módulo Enigma (o que ele faz)?
Resposta: Retornar a soma da variável a + a posição do vetor que vai ser
definida no for através do inteiro N passado quando o método enigma for
chamado
n−1+2 n−2+2
=4+ ∑ 1+ ∑ 7
i=−1+2 i=−1+2
n +1 n
= 4 + ∑1 + ∑7
i=1 i=1
n
= 4 + n + 1 + 7∑ 1
i=1
= 4 + n + 1 + 7n
= 5 + 8n
T(n) = ∑ ∑ 1
i=1 j=i
T(n) = N²
5) O trecho de algoritmo para calcular a nn que utiliza uma repetição para a
contagem das multiplicações é dado por:
função inteiro n_elevado_n ( inteiro n) Se n for um múltiplo de 2, como: 1, 2, 4, 8, 16, 32,...
início O algoritmo anterior que calcula nn pode ser reescrito
inteiro res, i; para:
res ← 1;
para (i ← 1; i ≤ n; i++) faça função inteiro n_elevado_n2( inteiro n)
res ← res * n; início
retorna res; inteiro res, i;
fim. res ← n
para (i ← 1; i < n; i= i *2) faça
res ← res * res;
retorna res;
fim.
4n + 4 ≤ c * n, fazendo c = 8 5n – 1 ≤ c * n, fazendo c = 4
4n + 4 ≤ 8 * n, considerando n0 = 1 5n - 1 ≤ 4 * n, considerando n0 = 1
Pede-se:
a.2) alg_II; e b)
Pede-se:
a) Quais possíveis valores de n no pior caso e melhor caso?
melhor caso → n = 0
pior caso → n ≠ 0
Algoritmo 1:
Algoritmo 2:
2(8*log2n)
16* 2 * log2n
32*log2n ----------------------------- x
8*log2nx = 32*log2n*16
X= 512 log2n / 8 log2n
X = 64
N1= (60+40)/2 = 50
N2= (60-40)/2 = 10
Resposta: N-T(s)
100-5(s)
1000-X(s)
X=(1000.5)/100
X=50(s)
N1= (60+40)/2 = 50
N2= (60-40)/2 = 10
a) log 2 n+ √ n=O(log 2 n)
n + √n = O(n)
n + log n = O(n)
b) 3n +2=Θ(3n )
3^n+2 = Θ (3^n)
3^n . 3^2 = Θ (3^n)
e) n3 + n3 log2 n2 = o(n4)
n^3 + n^3 log n^2 = O(n^4)
2n^3 . 2^n^2 = O(n^4)
falso, O(n^3)
18)Quais das seguintes igualdades ou afirmações NÃO são verdadeiras?
Explicar o porquê em cada caso.
N = 2 => -2 * 2² ≤ 2² - 2 -2 ≤ 4 * 2² => -8 ≤ 0 ≤ 16