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
Exercícios relacionados
Muitas vezes o uso de encadeamento simples acarreta a necessidade de incluir um comando de repetição (laço) para fazer um ponteiro (ou indexador) percorrer a estrutura a partir do início até ele se posicionar no penúltimo elemento da estrutura, demandado possivelmente por uma inserção e/ou uma deleção. No exemplo em questão, pela forma de implementação escolhida, podemos afirmar que isso ocorre sempre que se fizer uma operação:
b) deleção na fila de dados.
b) deleção na fila de dados.
As Estruturas de Dados definem a forma como os dados serão armazenados na memória do computador. Duas das estruturas de dados mais utilizadas na computação são a Pilha e a Fila. Considere as afirmativas abaixo que comparam as estruturas de Pilha e Fila:
I - A estrutura chamada Pilha é descrita como uma estratégia LIFO - last in, first out (o último que entra é o primeiro que sai), isto é, os elementos da pilha só podem ser retirados na ordem inversa à ordem que foram introduzidos.
II - A estrutura chamada Fila é descrita como uma estratégia FIFO - first in, first out (o primeiro que entra é o primeiro que sai), isto é, os elementos da pilha só podem ser retirados na mesma ordem em que foram inseridos.
III - Uma estrutura que recebe dos dados 10, 20, 30, 40 e 50 nessa ordem e só permite a sua retirada na ordem 50, 40, 30, 20 e 10 é um exemplo de uma Pilha.
IV - Uma estrutura que recebe dos dados 10, 20, 30, 40 e 50 nessa ordem e só permite a sua retirada na ordem 50, 40, 30, 20 e 10 é um exemplo de uma Fila.
V - Um programa que usa apenas estruturas de Pilha recebe os dados 1, 2, 3, 4 e 5 nessa ordem e imprime os dados na ordem 1, 2, 3, 4 e 5 pode ter sido implementado com duas estruturas de Pilha consecutivas.
As afirmativas CORRETAS são:
c) I, II e III, apenas.
I - A estrutura chamada Pilha é descrita como uma estratégia LIFO - last in, first out (o último que entra é o primeiro que sai), isto é, os elementos da pilha só podem ser retirados na ordem inversa à ordem que foram introduzidos.
II - A estrutura chamada Fila é descrita como uma estratégia FIFO - first in, first out (o primeiro que entra é o primeiro que sai), isto é, os elementos da pilha só podem ser retirados na mesma ordem em que foram inseridos.
III - Uma estrutura que recebe dos dados 10, 20, 30, 40 e 50 nessa ordem e só permite a sua retirada na ordem 50, 40, 30, 20 e 10 é um exemplo de uma Pilha.
IV - Uma estrutura que recebe dos dados 10, 20, 30, 40 e 50 nessa ordem e só permite a sua retirada na ordem 50, 40, 30, 20 e 10 é um exemplo de uma Fila.
V - Um programa que usa apenas estruturas de Pilha recebe os dados 1, 2, 3, 4 e 5 nessa ordem e imprime os dados na ordem 1, 2, 3, 4 e 5 pode ter sido implementado com duas estruturas de Pilha consecutivas.
As afirmativas CORRETAS são:
c) I, II e III, apenas.
Escreva uma função chamada valor_energia que recebe como parâmetros a quantidade de kWh consumida no mês e o tipo de instalação ( R para residências, C para comércios e I para indústrias). A função deve retornar o preço a pagar pelo fornecimento de energia elétrica, conforme as regras definidas na tabela a seguir:
Preço por tipo e faixa de consumo | ||
---|---|---|
Tipo | Faixa(kWh) | Preço do kWh |
Residencial | Até 500 |
|
Acima de 500 |
|
|
Comercial | Até 1000 |
|
Acima de 1000 |
|
|
Industrial | Até 5000 |
|
Acima de 5000 |
|
Observação 1: O nome da função deve ser exatamente como especificado acima e seu arquivo deve obrigatoriamente se chamar problema4.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()).
Escreva uma função chamada consumo que recebe como parâmetros a distância percorrida em quilômetros e a quantidade de litros de gasolina consumidos por um veículo para percorrer tal distância. Sua função deve retornar uma mensagem de acordo com a tabela abaixo:
Consumo |
|
Mensagem |
---|---|---|
Menor que | 8 | Venda o carro! |
Entre | 8 e 12 | Econômico! |
Maior que | 12 | Super econômico! |
Observação 1: O nome da função deve ser exatamente como especificado acima e seu arquivo deve obrigatoriamente se chamar problema2.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()).