Ajude nosso projeto a se manter online, faça um PIX de qualquer valor:
programacao.progressiva@gmail.com

Python - Programa que calcula salário e aumento em porcentagem

"
As Organizações Tabajara resolveram dar um aumento de salário aos seus colaboradores e lhe contrataram para desenvolver o programa que calculará os reajustes.


  • Faça um programa que recebe o salário de um colaborador e o reajuste segundo o seguinte critério, baseado no salário atual:
  • salários até R$ 280,00 (incluindo) : aumento de 20%
  • salários entre R$ 280,00 e R$ 700,00 : aumento de 15%
  • salários entre R$ 700,00 e R$ 1500,00 : aumento de 10%
  • salários de R$ 1500,00 em diante : aumento de 5% Após o aumento ser realizado, informe na tela:
  • o salário antes do reajuste;
  • o percentual de aumento aplicado;
  • o valor do aumento;
  • o novo salário, após o aumento."

Código comentado em Python

Vamos armazenar o salário na variável 'salario' (que original, hein?)
Teremos outras variáveis no decorrer do programa:
  • percentual - percentual de aumento aplicado
  • aumento - valor em R$ do aumento aplicado
  • salario_novo - novo valor do salário, reajustado pelo aumento
A única coisa que muda, de acordo com o salário fornecido pelo usuário, é o percentual do aumento.

Vamos fazer uma série de testes IF ELIF ELSE pra descobrir qual percentual correto aplicar.

Se for menor ou igual a R$ 280,00 , percentual será 20%
Se não for, vamos testar para ver se é menor ou igual a R$ 700,00 - se for, o percentual será de 15%.

Se também não for menor R$ 700,00, vamos testar para ver se é menor igual a R$ 1500,00 - se sim, 'percentual' recebe 10 (%). 

Se também não for menor que R$ 1500,00 é porque é maior então aplicamos 5%.

Para saber o valor do aumento em R$, primeiro pegamos a variável  'percentual' e dividimos por 100.0 (usamos decimal pra mostrar ao Python que essa variável deve ser tratada como um float):
percentual = percentual / 100.0

(essa linha quer dizer: o novo valor de 'percentual' é o valor antigo dela dividido por 100).

Agora multiplicamos 'percentual' por 'salario' e temos o aumento do salário em R$.

Basta somar esse valor ao salário original, que temos o novo salário:


    salario = float(input('Salário do colaborador: '))

    if (salario <= 280):
        percentual = 20
    elif (salario <= 700):
        percentual = 15
    elif (salario <= 1500):
        percentual = 10
    else:
        percentual = 5

    print('Salario original: R$ ', salario)
    print('Percentual: ',percentual,'%')

    percentual = percentual/100.0
    aumento = percentual * salario
    novo_salario = salario + aumento
    
    print('Aumento: R$ ',aumento)
    print('Novo salário: R$ ', novo_salario)
 



13 comentários:

  1. show de bola tava na duvida na hora de criar as outras variáveis.

    ResponderExcluir
  2. Nossa, gastei 30 linhas de código pra fazer isso, preciso aprender muito ainda kk

    ResponderExcluir
    Respostas
    1. Meu codigo ficou assim :

      salario = float(input('Digite o salario: R$ '))

      sal20 = salario * 0.20

      sal15 = salario * 0.15

      sal10 = salario * 0.10

      sal5 = salario * 0.05


      if salario <= 280:
      print('Seu salario de R${:.2f} teve um reajuste de 20% o equivalente a R${:.2f}, seu novo salario é R${:.2f}'.format(salario,sal20,sal20 + salario))

      if salario > 280 and salario <= 700:
      print('Seu salario de R${:.2f} teve um reajuste de 15% o equivalente a R${:.2f}, seu novo salario é R${:.2f}'.format(salario,sal15,sal15 + salario))

      if salario > 700 and salario <= 1500:
      print('Seu salario de R${:.2f} teve um reajuste de 10% o equivalente a R${:.2f}, seu novo salario é R${:.2f}'.format(salario,sal10,sal10 + salario))

      if salario > 1500:
      print('Seu salario de R${:.2f} teve um reajuste de 5% o equivalente a R${:.2f}, seu novo salario é R${:.2f}'.format(salario,sal5,sal5 + salario))

      Excluir
  3. Mano do céu tenho q aprender mto ainda

    ResponderExcluir
  4. E fiz esse exercicio e ficou assim !

    salario = float(input("Digite seu salario:"))
    w = salario * 0.20 # salario ate 280
    x = salario * 0.15 # salario ate 280 a 700
    y = salario * 0.10 # salario ate 700 1.500
    z = salario // 20 # salario de 1.500 pra cima
    if salario <= 280:
    print("Salario inicial:{}".format(salario))
    print("Seu aumento foi de: 20%")
    print("Seu novo salario", salario + w)
    print("Valor aumentado:{}".format(w))
    elif salario > 280 and salario <= 700:
    print("Salario inicial:{}".format(salario))
    print("Seu aumento foi de: 15%")
    print("Seu novo salario", salario + x)
    print("Valor aumentado:{}".format(x))
    elif salario > 700 and salario <= 1500:
    print("Salario inicial:{}".format(salario))
    print("Seu aumento foi de: 10%")
    print("Seu novo salario", salario + y)
    print("Valor aumentado:{}".format(y))
    elif salario > 1500:
    print("Salario inicial:{}".format(salario))
    print("Seu aumento foi de: 5%")
    print("Seu novo salario", salario + z)
    print("Valor aumentado:{}".format(z))

    ResponderExcluir
  5. Consegui fazer em menos linhas assim:
    Salary=float(input("Digite o valor do seu sálario para cacular o reajuste:"))
    if Salary<=280:
    print("Seu salário reajustado em 20% é:R${:.2f}".format(Salary*1.2))
    elif Salary>280 or Salary<=700:
    print("Seu salário reajustado em 15% é:R${:.2f}".format(Salary*1.15))
    elif Salary>700 or Salary<=1500:
    print("Seu salário reajustado em 10% é:R${:.2f}".format(Salary*1.10))
    elif Salary>1500:
    print("Seu salário reajustado em 5% é:R${:.2f}".format(Salary*1.05))
    else:
    print("Valor inserido está fora dos paramêtros aceitáveis")

    ResponderExcluir
  6. O segredo é não complicar sem necessidade:
    Salary=float(input("Digite o valor do seu sálario para cacular o reajuste:"))
    if Salary<=280:
    print("Seu salário reajustado em 20% é:R${:.2f}".format(Salary*1.2))
    elif Salary>280 or Salary<=700:
    print("Seu salário reajustado em 15% é:R${:.2f}".format(Salary*1.15))
    elif Salary>700 or Salary<=1500:
    print("Seu salário reajustado em 10% é:R${:.2f}".format(Salary*1.10))
    elif Salary>1500:
    print("Seu salário reajustado em 5% é:R${:.2f}".format(Salary*1.05))
    else:
    print("Valor inserido está fora dos paramêtros aceitáveis")

    ResponderExcluir
  7. Faça um programa que recebe o salário de um colaborador e o reajuste segundo o seguinte critério,
    baseado no salário atual:
    • faixas de salários até R$ 280,00 (incluindo) : aumento de 20%
    • faixas de salários entre R$ 280,00 e R$ 700,00 : aumento de 15%
    • faixas de salários entre R$ 700,00 e R$ 1500,00 : aumento de 10%
    • faixas de salários de R$ 1500,00 em diante : aumento de 5% Após o aumento ser realizado, informe na
    tela:
    • o salário antes do reajuste;
    • o valor do aumento;
    • o novo salário, após o aumento.
    OBS: esta é uma tabela progressiva, se o trabalhador ganhar R$ 1.200, por exemplo, seu reajuste será da
    forma (1200-700)* 0,10 + (700-280) *0,15 + 280*0,20

    ResponderExcluir
  8. salario = float(input("Digite aqui o Salário: "))
    aumento1 = salario * 0.2
    aumento2 = salario * 0.15
    aumento3 = salario * 0.1
    aumento4 = salario * 0.05

    if salario <= 280:
    salarioNovo = salario + aumento1
    print(f"O Salário é R${salario}, o percentual de aumento foi de 20%, o valor do aumento foi de R${aumento1}, e o novo salário é de: R${salarioNovo}")
    elif (salario > 280) and (salario <= 700):
    salarioNovo = salario + aumento2
    print(f"O Salário é R${salario}, o percentual de aumento foi de 15%, o valor do aumento foi de R${aumento2}, e o novo salário é de: R${salarioNovo:}")
    elif (salario > 700) and (salario <= 1500 ):
    salarioNovo = salario + aumento3
    print(f"O Salário é R${salario}, o percentual de aumento foi de 10%, o valor do aumento foi de R${aumento3}, e o novo salário é de: R${salarioNovo:.2f}")
    else:
    salarioNovo = salario + aumento4
    print(f"O Salário é R${salario}, o percentual de aumento foi de 5%, o valor do aumento foi de R${aumento4}, e o novo salário é de: R${salarioNovo:.2f}")

    ResponderExcluir