Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

função imprimir total

Estou tetando criar uma função que pegue os resultados dos inputs e me devolva no final o resultado total das despesas, só consegui chegar até aqui. alguém me ajuda?

despesas = []
d1 = int(input("Despesas com Alimentação: "))
d2 = int(input("Despesas com Transporte: "))
d3 = int(input("Despesas com Laser: "))
d4 = int(input("Despesas com Moradia: "))
d5 = int(input("Despesas com Escola: "))
d6 = int(input("Despesas Extras: "))

def soma(d1, d2, d3, d4, d5, d6, despesas):

  x= d1+d2+d3+d4+d5+d6

print ("Soma total igual a "(x))
3 respostas

Olá Tacio,

Pelo que entendi sua função deve receber os valores do inputs e te devolver a soma total de valores.

Pelo que vi, logo de cara você cria uma listinha de despesas, e em seguida cria também diversas variáveis que guardam cada um dos valores que o usuário digita. Uma dica aqui seria já inserir os valores que o usuário digita em despesas, vai ajudar mais a frente.

Se seus dados já estiverem na lista você pode fazer com que sua função recebe apenas a lista de despesa, tornando muito mais fácil sua utilização.

Uma vez que sua função recebe uma lista você pode iterar por ela a partir de uma laço de repetição pegando um por um os valores e somando em uma variável local. Por fim pode usar um return pra devolver o valor.

Faça alguns testes por aí seguindo essa dica para chegar na implementação. Tendo dificuldade, poste novamente aqui.

Abraço

solução!

Seria isso?

def somaDespesas(desp1, desp2, desp3, desp4, desp5, desp6):
    return desp1+desp2+desp3+desp4+desp5+desp6

d1 = float(input("Despesas com Transporte: R$"))
d2 = float(input("Despesas com Alimentação: R$"))
d3 = float(input("Despesas com Lazer: R$"))
d4 = float(input("Despesas com Moradia: R$"))
d5 = float(input("Despesas Escolar: R$"))
d6 = float(input("Despesas extras: R$"))

print("Valor total de despesa R$%.2f"%somaDespesas(d1, d2,d3, d4, d5, d6))

E ai Tacio ?

É bem essa ideia mesmo. Sua função recebe os dados, processa e devolve o resultado.

Poderia melhorar usando uma lista (documentação). Assim você poderia reduzir as repetições e declarações de tantas variáveis, além de poder trabalhar com loops para resolver o problema de maneira bem elegante.

Abraço

exemplo => http://bit.ly/2iEvE8e