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()).
Passo 1
Beleza, vamos entender o que a questão está pedindo! Precisamos criar uma função chamada
valor_energia
que recebe dois 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). Com base nesses dados, a função vai calcular quanto a pessoa deve pagar pela energia elétrica, seguindo as tarifas que estão na tabela fornecida. Para resolver isso, vamos precisar usar conceitos de funções, condicionais (como if
, elif
, else
) e operações matemáticas básicas em Python.Passo 2
Primeiro, vamos definir a estrutura básica da função em Python. Uma função é definida usando a palavra-chave
def
, seguida do nome da função e dos parâmetros entre parênteses. No nosso caso:def valor_energia(kwh, tipo):
pass # Aqui vamos colocar o código
Passo 3
Agora, vamos entender como as tarifas variam de acordo com o tipo de instalação e o consumo de kWh. Temos três tipos: Residencial ®, Comercial © e Industrial (I). Para cada tipo, existem duas faixas de consumo com preços diferentes.
Vamos precisar usar condicionais para verificar o tipo de instalação e, dentro de cada tipo, verificar se o consumo está dentro da faixa menor ou maior.
Passo 4
Vamos começar a implementar as condicionais para o tipo de instalação. Usaremos a estrutura
if
, elif
e else
para isso.def valor_energia(kwh, tipo):
if tipo == 'R':
# Tarifas para Residencial
elif tipo == 'C':
# Tarifas para Comercial
elif tipo == 'I':
# Tarifas para Industrial
else:
return "Tipo de instalação inválido"
Passo 5
Dentro de cada tipo de instalação, precisamos verificar a faixa de consumo e aplicar a tarifa correspondente. Vamos começar com o tipo Residencial.
Para Residencial:
- Até 500 kWh: R$ 0,40 por kWh
- Acima de 500 kWh: R$ 0,65 por kWh
Então, dentro do bloco
if tipo == 'R':
, adicionamos mais uma estrutura condicional:if kwh <= 500:
preco = 0.40
else:
preco = 0.65
Passo 6
Fazendo o mesmo para o tipo Comercial:
Para Comercial:
- Até 1000 kWh: R$ 0,55 por kWh
- Acima de 1000 kWh: R$ 0,60 por kWh
Dentro do bloco
elif tipo == 'C':
:if kwh <= 1000:
preco = 0.55
else:
preco = 0.60
Passo 7
E para o tipo Industrial:
Para Industrial:
- Até 5000 kWh: R$ 0,55 por kWh
- Acima de 5000 kWh: R$ 0,60 por kWh
Dentro do bloco
elif tipo == 'I':
:if kwh <= 5000:
preco = 0.55
else:
preco = 0.60
Passo 8
Após determinar o preço por kWh com base no tipo e no consumo, precisamos calcular o valor total a pagar. Isso é feito multiplicando a quantidade de kWh pelo preço correspondente.
total = kwh * preco
Passo 9
Finalmente, vamos retornar o valor total calculado pela função. Isso será feito usando a palavra-chave
return
.return total
Passo 10
Vamos juntar tudo e ver como fica a função completa:
def valor_energia(kwh, tipo):
if tipo == 'R':
if kwh <= 500:
preco = 0.40
else:
preco = 0.65
elif tipo == 'C':
if kwh <= 1000:
preco = 0.55
else:
preco = 0.60
elif tipo == 'I':
if kwh <= 5000:
preco = 0.55
else:
preco = 0.60
else:
return "Tipo de instalação inválido"
total = kwh * preco
return total
Resposta
Aqui está a função
valor_energia
completa conforme solicitado:def valor_energia(kwh, tipo):
if tipo == 'R':
if kwh <= 500:
preco = 0.40
else:
preco = 0.65
elif tipo == 'C':
if kwh <= 1000:
preco = 0.55
else:
preco = 0.60
elif tipo == 'I':
if kwh <= 5000:
preco = 0.55
else:
preco = 0.60
else:
return "Tipo de instalação inválido"
total = kwh * preco
return total
Essa função verifica o tipo de instalação e a quantidade de kWh consumida, aplica a tarifa correta e retorna o valor total a pagar pela energia elétrica.
Exercícios relacionados
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()).
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.
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()).
Escreva uma função chamada estacionamento que recebe como parâmetros a hora e minuto de entrada, e hora e minuto de saída de um estacionamento e retorna o valor total devido de acordo com as seguintes regras:
Quantidade de Horas | Tarifa |
---|---|
Até duas horas |
|
Entre três e quatro horas |
|
Acima de quatro horas |
|
0 número de horas a pagar é sempre inteiro e arredondado por excesso. Por exemplo, quem estacionar por 1 minuto pagará por 1 hora. Quem estacionar durante 61 minutos pagará por 2 horas. Perceba que os momentos de entrada e saída do estacionamento são apresentados na forma de pares de inteiros, representando horas e minutos. Por exemplo, o par
representará
Observação 1: O nome da função deve ser exatamente como especificado acima e seu arquivo deve obrigatoriamente se chamar problema3.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 1: O nome da função deve ser exatamente como especificado acima e seu arquivo deve obrigatoriamente se chamar problema3.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()).