SóProvas


ID
2728717
Banca
CEPS-UFPA
Órgão
UFPA
Ano
2018
Provas
Disciplina
Algoritmos e Estrutura de Dados
Assuntos

Considere o pseudo-código abaixo:


F0 = 0

F1 = 1

I = 0

ARA I DE 1 ATÉ 10, FAÇA

T = F1

F1 = F1 + F0

F0 = T

FIM PARA

MOSTRE F1


O valor da variável F1 exibido é

Alternativas
Comentários
  • O Algorítimo segue a sequência de Fibonacci.


    F1 inicia com 1 e no loop recebe os 1,2,3,5,8,13,21,34,55 e 89

  • As 3 instruções dentro da estrutura de repetição PARA compõem o bloco que será executado repetidamente. Esse loop é do tipo repetição com variável de controle onde I é a variável de controle. 

    Para reproduzir os cálculos realizados pelo algoritmo vamos montar um teste de mesa para observar o valor das variáveis em cada ponto da execução do código.

    Nas 3 primeiras linhas de código as variáveis F0, F1 e I são inicializadas como F0 = 0, F1 = 1 e I = 0. Portanto, o estado inicial das variáveis é o seguinte.

    I 0

    T

    F1 1

    F0 0

    Na linha 4 ele entra na estrutura condicional PARA usando I como variável de controle. Serão feitas 10 repetições com esse PARA, com I variando de 1 a 10.

    Na 1ª iteração (I = 1) ele executa as 3 instruções 

    T = F1 = 1

    F1 = F1 + F0 = 1 + 0 = 1

    F0 = T = 1

    Ao final do 1º loop, nossa mesa será a seguinte.

    I 0 1

    T 1

    F1 1 1

    F0 0 1

    Na 2ª iteração (I = 2) ele executa as 3 instruções 

    T = F1 = 1

    F1 = F1 + F0 = 1 + 1 = 2

    F0 = T = 1

    Ao final do 2º loop, nossa mesa será a seguinte.

    I 0 1 2

    T 1 1

    F1 1 1 2

    F0 0 1 1

    Na 3ª iteração (I = 3) ele executa as 3 instruções 

    T = F1 = 2

    F1 = F1 + F0 = 2 + 1 = 3

    F0 = T = 2

    Ao final do 3º loop, nossa mesa será a seguinte.

    I 0 1 2 3

    T 1 1 2

    F1 1 1 2 3

    F0 0 1 1 2

    Na 4ª iteração (I = 4) ele executa as 3 instruções 

    T = F1 = 3

    F1 = F1 + F0 = 3 + 2 = 5

    F0 = T = 3

    Ao final do 4º loop, nossa mesa será a seguinte.

    I 0 1 2 3 4

    T 1 1 2 3

    F1 1 1 2 3 5

    F0 0 1 1 2 3

    Na 5ª iteração (I = 5) ele executa as 3 instruções 

    T = F1 = 5

    F1 = F1 + F0 = 5 + 3 = 8

    F0 = T = 5

    Ao final do 5º loop, nossa mesa será a seguinte.

    I 0 1 2 3 4 5

    T 1 1 2 3 5

    F1 1 1 2 3 5 8

    F0 0 1 1 2 3 5

    Na 6ª iteração (I = 6) ele executa as 3 instruções 

    T = F1 = 8

    F1 = F1 + F0 = 8 + 5 = 13

    F0 = T = 8

    Ao final do 6º loop, nossa mesa será a seguinte.

    I 0 1 2 3 4 5 6

    T 1 1 2 3 5 8

    F1 1 1 2 3 5 8 13

    F0 0 1 1 2 3 5 8

    Na 7ª iteração (I = 7) ele executa as 3 instruções 

    T = F1 = 13

    F1 = F1 + F0 = 13 + 8 = 21

    F0 = T = 13

    Ao final do 7º loop, nossa mesa será a seguinte.

    I 0 1 2 3 4 5 6 7

    T 1 1 2 3 5 8 13

    F1 1 1 2 3 5 8 13 21

    F0 0 1 1 2 3 5 8 13

    Na 8ª iteração (I = 8) ele executa as 3 instruções 

    T = F1 = 21

    F1 = F1 + F0 = 21 + 13 = 34

    F0 = T = 21

    Ao final do 8º loop, nossa mesa será a seguinte.

    I 0 1 2 3 4 5 6 7 8

    T 1 1 2 3 5 8 13 21

    F1 1 1 2 3 5 8 13 21 34

    F0 0 1 1 2 3 5 8 13 21

    Na 9ª iteração (I = 9) ele executa as 3 instruções 

    T = F1 = 34

    F1 = F1 + F0 = 34 + 21 = 55

    F0 = T = 34

    Ao final do 9º loop, nossa mesa será a seguinte.

    I 0 1 2 3 4 5 6 7 8 9

    T 1 1 2 3 5 8 13 21 34

    F1 1 1 2 3 5 8 13 21 34 55

    F0 0 1 1 2 3 5 8 13 21 34

    Na 10ª iteração (I = 10) ele executa as 3 instruções 

    T = F1 = 55

    F1 = F1 + F0 = 55 + 34 = 89

    F0 = T = 55

    Ao final do 10º loop, nossa mesa será a seguinte.

    I 0 1 2 3 4 5 6 7 8 9 10

    T 1 1 2 3 5 8 13 21 34 55

    F1 1 1 2 3 5 8 13 21 34 55 89

    F0 0 1 1 2 3 5 8 13 21 34 55

    Após 10 loops chega do fim a estrutura de repetição. O valor de F1 após as 10 iterações é 89. Resposta letra C.

    Obs: Esse algoritmo é a clássica sequência de Fibonacci. Falamos com detalhe sobre essa sequência especial na questão 7. Dê uma olhada lá. 

    Resposta: C

  • Força Guerreiro!!!!!!

  • Tendi foi nada kkkkkk