Questão FC374669
Considere o seguinte trecho de algoritmo: função calcular(valor inteiro x) retorna inteiro { inteiro resultado se (x <= 1) { resultado = 1 } senão se (x mod 2 == 0) { resultado = x
Algoritmos e Lógica de Programação
Instituto Consulplan · 2025
Considere o seguinte trecho de algoritmo:
função calcular(valor inteiro x) retorna inteiro {
inteiro resultado
se (x <= 1) {
resultado = 1
} senão se (x mod 2 == 0) {
resultado = x / 2 + calcular(x - 1)
} senão {
resultado = x * 3 + calcular(x - 2)
}
retorna resultado
}
início {
inteiro num = 5
inteiro res = calcular(num)
escreva("Resultado: ", res)
}
A saída do programa após sua execução será:
- Resultado: 16
- Resultado: 25
- Resultado: 28
- Resultado: 34
Mostrar resposta e comentário
Gabarito
B
Comentário do professor
O algoritmo é recursivo e possui um caso base em \(x \le 1\), que retorna 1.
Para valores ímpares a função calcula \(x \times 3 + calcular(x-2)\); para pares, \(x/2 + calcular(x-1)\).
Com \(num = 5\):
calcular(5) = \(5 \times 3 + calcular(3)\) = \(15 + calcular(3)\).
calcular(3) = \(3 \times 3 + calcular(1)\) = \(9 + calcular(1)\).
calcular(1) = caso base = \(1\).
Somando as parcelas: \(15 + 9 + 1 = 25\). Portanto a saída exibida é Resultado: 25.
Conteúdo do catálogo FC Concursos · Atualizado em