1
resposta

Dúvida Questão 2

Olá Boa bom dia,

Eu repliquei a solução da questão 2, mas infelizmente está dando um erro na linha 19, que não estou conseguindo entender, poderiam me orientar sobre qual é o problema, pf ?

Segue o script:

# Dados de gastos 
gastos =[2172.51, 3701.35, 3518.09, 3456.09, 3249.38, 2840.82, 3891.45, 3075.26, 2317.64, 3219.08]

# Variável que vai encontrar quantas compras foram feitas acima de 3000
contador_acima_3000 = 0

#Usamos o laço for para ler a lista de gastos

for gastos in gastos:
  # verificamos se o elemento está acima de 3000
    if gastos > 3000:
  #acrescentamos mais 1 no contador, caso tenha algum valor acima de 3000
      contador_acima_3000 += 1

# Quantidade de compras
# variável que vai ser utilizada para o cálculo da porcentagem 
quantidade_compras = len(gastos)

# Com a contagem conseguimos calcular a porcentagem de valores acima de 3000 
# entre todas as compras 

porcentagem_acima_3000 = 100*(contador_acima_3000)/ (quantidade_compras)

#Resultado 

print(f'{contador_acima_3000} compras foram feitas acima de R$ 3000.00')
print(f'{porcentagem_acima_3000}% dos gastos foram acima de R$ 3000.00')
1 resposta

Olá Paulo, tudo bem?

O problema está na linha for gastos in gastos:. Aqui, você está sobrescrevendo a variável gastos, o que causa um problema quando você tenta usar len(gastos) mais tarde. Para resolver isso, você deve usar um nome diferente para a variável do loop, como gasto:


gastos = [2172.51, 3701.35, 3518.09, 3456.09, 3249.38, 2840.82, 3891.45, 3075.26, 2317.64, 3219.08]

contador_acima_3000 = 0

for gasto in gastos:  # --------> aqui mudamos o 'gastos' para gasto
    if gasto > 3000:
        contador_acima_3000 += 1

quantidade_compras = len(gastos)
porcentagem_acima_3000 = 100 * (contador_acima_3000) / (quantidade_compras)

# Resultado 
print(f'{contador_acima_3000} compras foram feitas acima de R$ 3000.00')
print(f'{porcentagem_acima_3000}% dos gastos foram acima de R$ 3000.00')

Espero ter ajudado.

Qualquer dúvida, compartilhe no fórum.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!