Exercícios Resolvidos de Recursividade

Ver Teoria

Enunciado

Escreva, usando a linguagem C++, uma função recursiva, S o m a S e r i e ( i , j , k ) , que devolva a soma da série de valores do intervalo [ i , j ] , com incremento k .

Passo 1

Eai, tudo tranquilo contigo?

Nessa questão, nós temos que fazer uma função que soma uma série de valores que podem ir de i até j , variando de k em k . Para fazer isso, primeiramente vamos pensar no caso em que vamos encerrar a recursão. Essa recursão deve ser encerrada no caso de i + k ser maior do que o final do intervalo, ou seja j . Nesse caso, vamos retornar o somente o valor de i :

Passo 2

A seguir, vamos implementar a nossa recursividade. Nela, vamos retornar o valor de i somado ao valor de S o m a S e r i e ( i + k ,   j ,   k ) . Desse modo, a função vai retornar o menor valor do intervalo somado à função recebendo o valor do novo intervalo com o incremento, que vai retornar o menor valor desse intervalo ( i + k ) + a função iniciando no intervalo i + 2 k ... e esse processo vai continuar até que o valor passado no inicia do intervalo somado ao incremento k seja maior que j .

Resposta