whileループを使用して給与計算機を作成しようとしています。私はその過程で道路ブロックを打った。何が欠けていますか? whileループ
name='1'
print('We pay your employees payroll!')
while name != '0':
name=input("\nEnter employee or Enter '0' to quit: ")
pr=float(input("Enter Payrate: "))
hrs=float(input("Enter Hours Worked: "))
if hrs <= 40:
print("Hours Worked: ", hrs)
print("Payrate: ", pr)
print("Basepay:", hrs*pr)
elif hrs > 40:
print('Hours Worked: ', hrs)
print("Payrate: ", pr)
print("Overtime Rate: ", pr*1.5)
print("Overtime Hours: ", hrs-40)
print("Basepay: ", (hrs-40)*pr)
print("Overtime Pay: ", (pr*1.5)*(hrs-40))
print("Grosspay: ", (pr*1.5)*(hrs-40)+(pr*hrs))
print("Employees Paid, Goodbye!")
ループがうまくいき、「0」を入力するとループがすぐに終了しないという問題があります。代わりに '0'を入力すると、最初の 'if'文を実行する前にhrs(入力)とpr(入力)を求め続け、「従業員はさようなら」とプログラムを終了します。
@Angelica。 – Tagc
@Steven 'name'の入力後に 'loop break condition'をチェックする必要があります。 –
と思うと、コードはうまくいきます。私は休憩状態が存在するかどうか分からなかった。 – Steven