這是我第一次發帖。請和我一起裸露。我已經在這個程式上作業了大約一個月,但我無法讓它正常運行。當用戶運行程式時,您將被要求輸入四名員工的作業時間。然后,該程式將乘以每個員工的作業時間并列印他們每個人的總工資。問題是,它只是將我輸入的最后一個數字相乘并將其列印為所有四名員工的總工資。我真的可以使用一些幫助。
如果您需要更多資訊或希望我澄清任何事情,請告訴我。感謝所有幫助。謝謝!
開始:
NUM_EMPLOYEES = 4
employeehours = [ ]
for i in range (NUM_EMPLOYEES):
print('Enter the hours worked by employee ', i 1, ':', sep = '', end = ' ')
employeehours = float(input())
pay_rate = 14
for i in range (NUM_EMPLOYEES):
gross_pay = employeehours * pay_rate
print('Gross pay for employee', i 1, ': $', format(gross_pay , '.2f'), sep = ' ')
uj5u.com熱心網友回復:
您正在設定employeehours為最后一個浮動值。你的代碼幾乎是正確的。
NUM_EMPLOYEES = 4
employeehours = [ ]
for i in range (NUM_EMPLOYEES):
print('Enter the hours worked by employee ', i 1, ':', sep = '', end = ' ')
employeehours.append(float(input()))
pay_rate = 14
for i in range (NUM_EMPLOYEES):
gross_pay = employeehours[i] * pay_rate
print('Gross pay for employee', i 1, ': $', format(gross_pay , '.2f'), sep = ' ')
uj5u.com熱心網友回復:
所以它應該是這樣的:
NUM_EMPLOYEES = 4
PAY_RATE = 14
employee_payment = []
for i in range(NUM_EMPLOYEES):
hours = float(input(f'Enter the hours worked by employee {i 1}: '))
employee_payment.append(hours * PAY_RATE)
for i in range(NUM_EMPLOYEES):
print(f'Gross pay for employee {i}: {employee_payment[i]}')
一開始你定義了一個串列,然后你將值分配給同一個變數,這就是為什么輸出只有一個員工付款
uj5u.com熱心網友回復:
您將“串列中位置 i 的事物”與“整個串列”混為一談。
當你寫作時employeehours = float(input()),我認為你的意思是employeehours[i] = float(input())。同樣,當您寫作時gross_pay = employeehours * pay_rate,我認為您的意思是gross_pay = employeehours[i] * pay_rate。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/406009.html
標籤:
