Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

[Projeto] Faça como eu fiz: somando números recursivamente [ Especialista IA]

def soma_recursiva(n):
    if n == 1:
        return 1
    return n + soma_recursiva(n - 1)

n = int(input("Digite um número: "))
resultado = soma_recursiva(n)

print(f"A soma de 1 a {n} é: {resultado}")
1 resposta

Oi, Tamy. Tudo bem com você?

Obrigado por compartilhar sua solução para o exercício de somando números recursivamente. Seu código atende ao objetivo da atividade e utiliza corretamente o conceito de recursão. O caso base foi definido quando n == 1, interrompendo as chamadas recursivas no momento adequado, enquanto a chamada soma_recursiva(n - 1) permite acumular os valores até chegar ao resultado esperado. A leitura da entrada e a exibição da mensagem final também estão de acordo com a proposta do exercício.

Como dica de aprofundamento, você pode pensar em como adaptar essa função para lidar com valores menores que 1. Atualmente, se o usuário informar 0 ou um número negativo, a recursão continuará indefinidamente até ocorrer um erro de limite de recursão. Em uma situação prática, uma validação antes da chamada da função ou um caso base adicional pode tornar a solução mais robusta.

Pensando em uma evolução desse exercício, como você adaptaria a função para calcular a soma de um intervalo qualquer, como de 3 até 8?

Parabéns pelo empenho e por compartilhar sua resolução. Continue praticando e utilizando o fórum para trocar conhecimentos. Estamos à disposição para ajudar sempre que precisar.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!