Escreva uma função chamada progressoes que recebe como parâmetros o termo inicial (
), a razão e a quantidade de termos (
). Em seguida, a função deve calcular o enésimo termo (
) da Progressão Aritmética (PA) e da Progressão Geométrica (PG). As fórmulas para o cálculo do enésimo termo da PA e da PG são, respectivamente:
Finalmente, se o enésimo termo da PA for maior que o da PG, a função deve retornar a soma (
) dos
primeiros termos da PA. Caso contrário, a função deve retornar a soma
dos
primeiros termos da PG. As fórmulas da soma dos
primeiros termos de uma PA e de uma PG são, respectivamente:
Observação 1: O nome da função deve ser exatamente como especificado acima e seu arquivo deve obrigatoriamente se chamar problema1.py.
Observação 2: Seu programa deve conter apenas a função descrita acima. Você não precisa realizar a entrada e saída de dados (não precisa usar as funções input() e print()).
Observação 2: Seu programa deve conter apenas a função descrita acima. Você não precisa realizar a entrada e saída de dados (não precisa usar as funções input() e print()).
Passo 1
Beleza, vamos por partes! O exercício pede para a gente criar uma função chamada ), a razão e a quantidade de termos (
). A gente vai trabalhar com Progressão Aritmética (PA) e Progressão Geométrica (PG). Precisamos calcular o enésimo termo de cada uma e, dependendo de qual é maior, retornar a soma dos primeiros
termos da PA ou da PG.
progressoes
que recebe três parâmetros: o primeiro termo da sequência (
Passo 2
Primeiro, vamos entender o que são PA e PG.
-
Progressão Aritmética (PA): É uma sequência de números onde a diferença entre um termo e o anterior é sempre a mesma, chamada de razão (
). A fórmula para encontrar o enésimo termo da PA é: -
Progressão Geométrica (PG): É uma sequência onde a razão entre um termo e o anterior é constante, também chamada de razão (
). A fórmula para o enésimo termo da PG é:
Passo 3
Agora, vamos calcular o enésimo termo para ambas as progressões usando as fórmulas que vimos.
Para a PA:
Para a PG:
Passo 4
Depois de calcular os enésimos termos, precisamos comparar qual deles é maior. Se o enésimo termo da PA for maior que o da PG, vamos calcular a soma dos
primeiros termos da PA. Caso contrário, vamos calcular a soma dos
primeiros termos da PG.
As fórmulas para as somas são:
-
Soma dos primeiros
termos da PA ( ): -
Soma dos primeiros
termos da PG ( ):
Passo 5
Agora, vamos colocar tudo isso dentro da função ,
(razão da PA) e
. Primeiro, vamos calcular
e
. Depois, comparamos qual é maior e calculamos a soma correspondente.
progressoes
. A função vai receber
Passo 6
Finalmente, vamos garantir que a função retorne apenas a soma correta, de acordo com a comparação feita.
Resposta
def progressoes(a1, r, n):
# Calculando o enésimo termo da PA
an_pa = a1 + (n - 1) * r
# Calculando o enésimo termo da PG
an_pg = a1 * r**(n - 1)
if an_pa > an_pg:
# Calculando a soma dos n termos da PA
Sn_pa = n * (a1 + an_pa) / 2
return Sn_pa
else:
# Calculando a soma dos n termos da PG
Sn_pg = a1 * (r**n - 1) / (r - 1)
return Sn_pg