Exercícios Resolvidos de Definindo funções recursivas

Ver Teoria

Enunciado

Faça uma função recursiva que receba um número inteiro positivo para n e imprima todos os números pares de 0 até n em ordem crescente.

Passo 1

Vamos lá, a primeira coisa que nós temos que fazer para definirmos essa função é o seu escopo.

Como nós só temos que realizar a impressão dos números pares podemos utilizar o tipo void, ou seja, se trata de uma função que não terá retorno de valor. Além disso, denominamos essa função como i m p r i m e P a r e indicamos ao programa que ela espera como parâmetro apenas um número inteiro n .

Passo 2

Agora que já temos o escopo da função definido, podemos declarar o caso básico dela.

Esse caso básico é bastante simples, como só recebemos um número n como parâmetro, iremos utilizar ele para indicar ao programa quando as instâncias da recursão devem ser retornadas.

Nós vamos entender isso melhor no próximo passo, vem comigo.

Passo 3

Com o caso básico definido, a ideia é criar instâncias da recursão sempre subtraindo n em 1, para quando o caso básico for verdadeiro ( n igual a 0) retornarmos nas instâncias verificando se o número é par.

A grande sacada dessa função é primeiro avançarmos nas instâncias para atingirmos n com o valor 0 (condição básica), quando isso acontece o caso básico fará com que as instâncias de recursão retornem de 0 a n (ordem crescente) verificando se o número é par. Caso o número seja par, o mesmo será impresso na tela.

Resposta

Ei, a resposta está no passo a passo :)