Python Forum
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Stuck - need help
#1
Hello, this is the assignment:
Write a program to prompt the user for hours and rate per hour using input to compute gross pay. Pay should be the normal rate for hours up to 40 and time-and-a-half for the hourly rate for all hours worked above 40 hours. Put the logic to do the computation of pay in a function called computepay() and use the function to do the computation. The function should return a value. Use 45 hours and a rate of 10.50 per hour to test the program (the pay should be 498.75). You should use input to read a string and float() to convert the string to a number. Do not worry about error checking the user input unless you want to - you can assume the user types numbers properly. Do not name your variable sum or use the sum() function.

This is my result (or what I tried):
hours = input("Enter Hours:")
regular_rate = input("Enter Rate:")
fhours = float(hours)
fregular_rate = float(regular_rate)

def computepay(hours):
    overtime_rate = 15.75
    fovertime_rate = float(overtime_rate)
    if hours < 40:
        pay = regular_rate * hours
    elif hours > 40:
        regular_pay = 40 * regular_rate
        overtime_pay = (hours - 40) * fovertime_rate
        pay = regular_pay + overtime_pay
    return pay
p = computepay(hours)    
print(p)
I don`t get a traceback because this is a leaning tool. But I get this Error message:
Output:
TypeError: unsupported operand type(s) for Sub: 'str' and 'int' (the line with overtime_pay = (hours - 40) * fovertime_rate)
What am I doing wrong??

Thank you!!
Reply


Messages In This Thread
Stuck - need help - by IvyMae - Sep-01-2019, 06:42 PM
RE: Stuck - need help - by ndc85430 - Sep-01-2019, 06:44 PM
RE: Stuck - need help - by IvyMae - Sep-01-2019, 06:51 PM
RE: Stuck - need help - by ichabod801 - Sep-01-2019, 06:57 PM
RE: Stuck - need help - by IvyMae - Sep-01-2019, 07:01 PM

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020