Boa noite galera!
Continuando os exercícios de Estrutura de Decisão da lista de exercícios oficial do Python.
O 12° exercício diz assim:
“Faça um programa para o cálculo de uma folha de pagamento, sabendo que os descontos são do Imposto de Renda, que depende do salário bruto (conforme tabela abaixo) e 3% para o Sindicato e que o FGTS corresponde a 11% do Salário Bruto, mas não é descontado (é a empresa que deposita). O Salário Líquido corresponde ao Salário Bruto menos os descontos. O programa deverá pedir ao usuário o valor da sua hora e a quantidade de horas trabalhadas no mês."
Desconto do IR:
Salário Bruto até 900 (inclusive) – isento
Salário Bruto até 1500 (inclusive) – desconto de 5%
Salário Bruto até 2500 (inclusive) – desconto de 10%
Salário Bruto acima de 2500 – desconto de 20% Imprima na tela as informações, dispostas conforme o exemplo abaixo. No exemplo o valor da hora é 5 e a quantidade de hora é 220.
“Faça um programa para o cálculo de uma folha de pagamento, sabendo que os descontos são do Imposto de Renda, que depende do salário bruto (conforme tabela abaixo) e 3% para o Sindicato e que o FGTS corresponde a 11% do Salário Bruto, mas não é descontado (é a empresa que deposita). O Salário Líquido corresponde ao Salário Bruto menos os descontos. O programa deverá pedir ao usuário o valor da sua hora e a quantidade de horas trabalhadas no mês."
Desconto do IR:
Salário Bruto até 900 (inclusive) – isento
Salário Bruto até 1500 (inclusive) – desconto de 5%
Salário Bruto até 2500 (inclusive) – desconto de 10%
Salário Bruto acima de 2500 – desconto de 20% Imprima na tela as informações, dispostas conforme o exemplo abaixo. No exemplo o valor da hora é 5 e a quantidade de hora é 220.
# -*- coding: latin-1 -*-
from __future__ import division
"""Programa para calcular folha de pagamento:
Entradas: Valor_Hora(VH) e Quatidade_Hora(QH)
Calc: QH * VH = SB
Desconto1: IR - (SB)
SB até 900(incuindo) - isento
SB até 1500(incuindo) - 5%
SB até 2500(incuindo) - 10%
SB acima 2500 - 20%
Desconto2: INSS - 10%(SB)
Empresa_deposita(Emp_Dep): FGTS 11%(SB)
Imprima:
Salário Bruto: (QH * VH): R$ XXX.XX
(-) IR (Desconto1): R$ XX.XX
(-) INSS (Desconto2): R$ XX.XX
FGTS(Emp_Dep): R$ XX.XX
Total_Desconto: R$ XXX.XX
SL: R$ XXXX.XX """
#O PROGRAMA COMEÇA AQUI--------------------------.
qh = input('Digite a quantidade de horas trabalhadas no mês: ')
vh = input('Digite o valor da hora trabalhada: ')
def sb():
sb = qh * vh
return sb
def desc_ir(): #Desconto IR
if sb() <= 900:
x = 0
elif sb() <= 1500:
x = 5
elif sb() <= 2500:
x = 10
else:
x = 20
return x
def calc_ir():
ir = ((sb() / 100)*desc_ir()) #Calc_IR
return ir
def inss():
inss = ((sb() / 100)*10) #Calc_INSS
return inss
def fgts():
fgts = (sb() / 100)*11 #Calc_FGTS
return fgts
def tot_desc():
tot_desc = (sb() / 100)*(desc_ir()+10) #Calc_Total_Desconto
return tot_desc
def sl():
sl = sb() - tot_desc()
return sl
print '\nSalário Bruto:','(',qh,'*',vh,'): R$',sb()
print '(-) IR','(',desc_ir(),'%): R$',calc_ir()
print '(-) INSS','(10 %): R$',inss()
print 'FGTS (11%): R$',fgts()
print 'Total de Desconto: R$',tot_desc()
print 'Salário Líquido: R$',sl()
Complicado não? é realmente ta mais complicado que os antigos, vou deixa-lo para que no fim de semana vocês estudem ele e refaçam de outras formas, segunda eu trago uma explicação completa do mesmo e outras postagens, bom fim de semana a todos fuiz...
Esse programa eu fiz a alguns meses atrás achei que ficou meio complicado pq misturei muito procedural e funcional, na segunda vou refaze-lo e postarei aqui com uma boa explicação então, se tiver alguma dificuldade para entender não fiquem martelando nele, tentem fazer da forma que melhor vcs consigam se adaptar. O importante é conseguir fazer!
ResponderExcluirvalor_hora = float(input("Qual é o seu valor hora:"))
ResponderExcluirquantidade_de_horas = float(input("Horas trabalhadas no mês:"))
porcentagem = ["0.05","0.10","0.20"]
salario_bruto = (valor_hora * quantidade_de_horas)
if salario_bruto<=900:
print("Salario liquido é:", salario_bruto)
elif 9002500:
b = salario_bruto * 0.20
c = salario_bruto * 0.10
d = salario_bruto * 0.11
e = salario_bruto - (b + c)
total_descontos = (b + c)
print("Salario bruto é:", salario_bruto)
print("(-) IR (5%):", b)
print("(-) INSS(10%):", c)
print(" FGTS(11%):", d)
print("Total de descontos é:", total_descontos)
print("Salario liquido é:", e)
Não consegui colocar todo o programa. Desculpa
ResponderExcluirvalor_hora = int(input('Valor da hora trabalhada: R$ '))
ResponderExcluirhoras = int(input('Horas trabalhadas: '))
sal_bruto = valor_hora * horas
inss = (sal_bruto / 100) * 10
fgts = (sal_bruto / 100) * 11
def IR():
if sal_bruto <= 900:
print('Salário bruto : R$ {}'.format(sal_bruto))
print('(-) IR (Isento!) : R$ 00,00')
print('(-) INSS (10%) : R$ {}'.format(inss))
print('FGTS (11%) : R$ {}'.format(fgts))
print('Total de descontos : R$ {}'.format(inss))
print('Salário liquido : R$ {}'.format(sal_bruto - inss))
elif sal_bruto > 900 and sal_bruto <=1500:
print('Salário bruto : R$ {}'.format(sal_bruto))
print('(-) IR (5%) : R$ {}'.format((sal_bruto/100)*5))
print('(-) INSS (10%) : R$ {}'.format(inss))
print('FGTS (11%) : R$ {}'.format(fgts))
print('Total de descontos : R$ {}'.format(inss + ((sal_bruto / 100)*5)))
print('Salário liquido : R$ {}'.format(sal_bruto - inss - ((sal_bruto / 100) * 5)))
elif sal_bruto > 1500 and sal_bruto <= 2500:
print('Salário bruto : R$ {}'.format(sal_bruto))
print('(-) IR (10%) : R$ {}'.format((sal_bruto / 100)*10))
print('(-) INSS (10%) : R$ {}'.format(inss))
print('FGTS (11%) : R$ {}'.format(fgts))
print('Total de descontos : R$ {}'.format(inss + ((sal_bruto / 100)*10)))
print('Salário liquido : R$ {}'.format(sal_bruto - inss - ((sal_bruto / 100) * 10)))
elif sal_bruto > 2500:
print('Salário bruto : R$ {}'.format(sal_bruto))
print('(-) IR (20%) : R$ {}'.format((sal_bruto / 100)*20))
print('(-) INSS (10%) : R$ {}'.format(inss))
print('FGTS (11%) : R$ {}'.format(fgts))
print('Total de descontos : R$ {}'.format(inss + ((sal_bruto / 100)*20)))
print('Salário liquido : R$ {}'.format(sal_bruto - inss - ((sal_bruto / 100) * 20)))
IR()