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

Passo 1

A questão pede uma função recursiva que recebe um inteiro positivo N e imprime todos os naturais de 0 até N em ordem crescente. O conteúdo é recursão, e vamos precisar identificar o caso base e o caso recursivo para montar essa função.

Passo 2

Para montar a recursão, primeiro definimos o caso base, ou seja, a situação mais simples que não chama a função de novo. Aqui, quando N = 0, basta imprimir 0 e não fazer mais chamadas.

Passo 3

Em seguida, no caso recursivo, para N > 0, a ideia é imprimir todos os números de 0 até N−1 antes de imprimir N. Então a função chama a si mesma com argumento N−1 e, em seguida, imprime o valor atual N.

Passo 4

Com esse roteiro, implementamos a função. No exemplo em C, usamos printf para imprimir e fazemos a chamada recursiva antes de imprimir N, garantindo que a saída fique em ordem crescente. "

Resposta

void imprimeDe0aN(int N) {
if (N == 0) {
printf("0 “);
} else {
imprimeDe0aN(N - 1);
printf(”%d ", N);
}
}

Exercícios relacionados