Exercícios Resolvidos de Estruturas de Repetição: O laço For

Ver Teoria

Enunciado

Dada a seguinte série:

S N = ∑ n = 0 n = N r n

Onde: r é um número real qualquer e N é um número natural.

Faça um programa que receba o valor de N e o valor de r e imprima todos os membros do somatório, e diga qual é o resultado da soma.

Por exemplo. Pra N = 3 e r = 0.5 a saída deve ser:

Passo 1

Vamos lá pessoal.

Essa questão envolve bastante matemática. Então vamos logo incluindo a biblioteca c m a t h

Pra efetuar um somatório podemos usar o laço f o r , usando n como nossa variável de iteração indo de 0 até N . O detalhe dessa questão está na forma de exibir o resultado pro usuário. Mas fica tranquilo que eu te mostro como fazer.

Mas antes de tudo, vamos declarar nossas variáveis. n é a variável de iteração, N é o valor final das iterações que receberemos do usuário, r é o valor constante da série, e s o m a é a variável onde vamos guardar nosso resultado. Como a variável soma vai sofrer operações de atualização, devemos inicia-la com valor zero.

Passo 2

Agora vamos pedir os dados pro usuário. Usamos o c o u t para pedir os valores pro usuário, e com c i n vamos armazenar o valor nas variáveis adequadas.

Passo 3

Agora vamos começar a exibir nossos resultados. Vamos dar uma olhada no exemplo que a questão trás

Perceba uma coisa, as partes que estão circuladas de azul são estruturas repetitivas: “um número seguido do sinal de adição +”. Em contrapartida, as partes circuladas de verde não apresentam nenhum padrão de repetição.

Vamos generalizar isso pra uma situação de N números

Note as partes circuladas em azul, há um padrão de escrita iniciando em r 0 e que se repete até r N - 1 : um número seguido do sinal de adição +. Já as partes circuladas em verde continuam sem apresentar nenhum padrão.

Isso diz pra gente, que dentro do laço vamos considerar apenas as partes circuladas em azul, e as partes circuladas em verde serão calculadas e escritas fora do laço.

Então, primeiro vamos escrever pro usuário “ S _ N   = ”:

Passo 4

Certo! Agora vamos criar um laço. Ele vai começar quando n = 0 e vai enquanto n   for menor do que N . E a variável n será incrementada de um em um: n + + .

Dentro do laço a gente vai somar o valor já existente na variável soma, com o valor r n . Pra isso podemos usar a função p o w da seguinte forma:

s o m a = s o m a + p o w ( r ,   n )

Ainda dentro do loop, vamos usar o c o u t pra exibir os valores que estão sendo somados. Note que não usamos o e n d l pois queremos exibir tudo na mesma linha.

Isso finaliza o nosso loop.

Passo 5

O loop está concluindo, mas lembre-se, o nosso loop foi só até N - 1 , ou seja, ainda falta somar r n no momento que n = N .

E por fim, precisamos adicionar a exibição da última parcela da série, e o resultado final.

E pronto. Questão finalizada!

Resposta