FC ConcursosFC Concursos

Questão FC266040

A seguir se apresenta um exemplo de pseudocódigo que apresenta o uso de uma função recursiva. algoritmo "CE2021" var ALFA, BETA, GAMA : inteiro funcao FNC (X:inteiro) :inteiro inic

Algoritmos e Lógica de Programação

IDECAN · 2021

A seguir se apresenta um exemplo de pseudocódigo que apresenta o uso de uma função recursiva.

 

algoritmo "CE2021"

var

ALFA, BETA, GAMA : inteiro

funcao FNC (X:inteiro) :inteiro

inicio

GAMA <- GAMA + 1

se X < 2 entao

retorne X + 1

senao

retorne X + FNC (X - 1)

filme

fimfuncao

inicio

BETA <- 3

GAMA <- 0

ALFA <- FNC (BETA)

escreval(" GAMA = ",GAMA:4,"ALFA = ",ALFA:4)

fimalgoritmo

 

Analisando o cenário depois de executado, é correto afirmar que a quantidade de vezes em que houve execução da função e o valor final para ALFA serão, respectivamente,

  1. 3 e 7.
  2. 4 e 9.
  3. 5 e 7.
  4. 5 e 9.
Mostrar resposta e comentário

Gabarito

A

Comentário do professor

Ao chamar FNC com BETA = 3 ocorrem três invocações: FNC(3), FNC(2) e FNC(1). A cada chamada a variável GAMA é incrementada em 1, portanto ao final GAMA = 3.

Na execução: FNC(3) faz \(3 +\) FNC(2); FNC(2) faz \(2 +\) FNC(1); FNC(1), por ter \(X<2\), retorna \(1+1=2\). Subindo na recursão: FNC(2)=2+2=4 e FNC(3)=3+4=7.

Logo, a quantidade de execuções da função é 3 e o valor final de ALFA é 7, correspondendo à alternativa correta.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo