image

Acesse bootcamps ilimitados e +650 cursos

50
%OFF
Article image

GO

Gabriel Oliveira08/11/2022 16:54
Compartilhe

Preciso de ajuda por favor

  • #Python

[RESOLVIDO] SOLUÇÃO:

salario = float(input())

if 0 <= salario <= 600.00: percent = 17

elif 600.01 <= salario <= 900.00: percent = 13

elif 900.01 <= salario <= 1500.00: percent = 12

elif 1500.01 <= salario <= 2000.00: percent = 10

else: percent = 5

ganho = n_salario = salario + (salario * percent)/100

reajuste = n_salario - salario

print(f"Novo salario: {ganho:.2f}\nReajuste ganho: {reajuste:.2f}\nEm percentual: {percent} %")

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

Estou fazendo um desafio de código e a única diferença que notei entre a minha saída e a esperada foi o "ponto" no lugar de "virgula".

Desafio: Leia o salário do funcionário e calcule e mostre o novo salário, bem como o valor de reajuste ganho e o índice reajustado, em percentual.

A entrada contém apenas um valor de ponto flutuante, que pode ser maior ou igual a zero, com duas casas decimais, conforme exemplos abaixo.

Código:

salario = float(input())

if (salario <= 600.00):

  percentual = 17

elif (salario <= 900.00):

  percentual = 13

elif (salario <= 1500.01):

  percentual = 12

elif (salario <= 2000.01):

  percentual = 10

else:

  percentual = 5

#print('Salario original: R$ ', salario)

percentual = percentual / 100.0

aumento = percentual * salario

novo_salario = salario + aumento

em_percento = (int(percentual * 100))

print('Novo salario: {:.2} '.format( novo_salario), end="")

print('Reajuste ganho: {:.2} '.format(aumento), end="")

print('Em percentual: {} %'.format(em_percento), end="")

Compartilhe
Comentários (7)

GO

Gabriel Oliveira - 08/11/2022 18:46


Usei o ''replace'' e agora o resultado fica idêntico nos testes abertos, porém não dá certo.


image

GO

Gabriel Oliveira - 08/11/2022 18:19

O erro aparece também no teste aberto, o resultado esperado aparece como " 2200,00" e a minha saída como "2200.00"

A única diferença que eu vejo continua sendo nos pontos e virgulas.

Giancarlo Rodrigues
Giancarlo Rodrigues - 08/11/2022 18:09

Mas agora já tá quase dando certo, né?! rsrs


Aonde apresenta erro agora?? Nos testes fechados?


GO

Gabriel Oliveira - 08/11/2022 17:54
Muito obrigado pela ajuda, fiz as alterações sugeridas e continua dando erro. Fiz o teste do "" print(f"{suaNumber:,.2f"} //sairá 2,000.00"" porém da erro tambem. 


image


José Bacalhau
José Bacalhau - 08/11/2022 17:32

você está usando o python ou javascript ? pq eu fiz um desafio que so funcionou quando eu coloquei o console.log ao invés do print

Erika Lima
Erika Lima - 08/11/2022 17:31

Já faz um tempo que não faço nada em Python, mas não seria {:.2f} ?


print('Novo salario: {:.2f} '.format( novo_salario), end="")

print('Reajuste ganho: {:.2f} '.format(aumento), end="")

print('Em percentual: {} %'.format(em_percento), end="")

Hugo Melo
Hugo Melo - 08/11/2022 17:16

Boa tarde Gabriel, tudo certo?


Pelo que vi aqui você pode alterar sua saída para o formato de moeda da seguinte forma:


print(f"{suaNumber:.2f"} //sairá 2000,00
print(f"{suaNumber:,.2f"} //sairá 2,000.00


Aonde .2f é a quantidade de casas flutuantes (float).


Editei algumas vezes pois vi que outras pessoas podem ter o mesmo problema de formatação, ai deixei os dois exemplos.