2016-09-18 6 views
0

Ich bekomme immer den folgenden Fehler und mein Programm wird nicht ausgeführt. Ich muss sicherstellen, dass mein Programm modular ist und die if-then Aussagen haben, um herauszufinden, welche Bruttolohngleichung zu verwenden ist.So lösen Sie diesen "unorderable types" Fehler

BASE_HOURS = 40 
OT_MULTIPLIER = 1.5 

def main(): 
    hours = input("Enter the number of hours worked: ") 
    payRate = input("Enter the hourly pay rate: ") 
    calcPayWithOT(hours,payRate) 

def calcPayWithOT(hours,payRate): 
    if hours <= BASE_HOURS: 
     theGrossPayNoOT = hours * payRate 
     print("The gross pay is $ ", theGrossPayNoOT) 
    if hours > BASE_HOURS: 
     theGrossPayOT = (hours - BASE_HOURS) * OT_MULTIPLIER + (hours * payRate) 
     print("The gross pay is $ ", theGrossPayOT) 
main() 

Error Message

+0

Bitte bearbeiten Sie Ihre Frage, um die spezifische Fehlermeldung anzuzeigen. – paisanco

+0

Hinzugefügt Bild der Fehlermeldung, die ich bekomme. – Alina

+3

Mögliches Duplikat von [Wie kann ich Eingaben als Ganzzahlen in Python lesen?] (Http://stackoverflow.com/questions/20449427/how-can-i-read-inputs-as-integers-in-python) – trincot

Antwort

1

Sie sollten die hours und payRate in ganze Zahlen umwandeln oder schwebt wie so:

hours = int(input("Enter the number of hours worked: ")) 
payRate = int(input("Enter the hourly pay rate: ")) 

oder

hours = float(input("Enter the number of hours worked: ")) 
payRate = float(input("Enter the hourly pay rate: ")) 

Je nachdem, ob Sie nur natürliche Zahlen enthalten sein sollen oder solche mit Figur s nach dem Komma .

+0

Sie geben ein schneller als ich! – paisanco

+0

@paisanco Sie wählen über mehr Fragen als ich! :-P – Bharel

+0

Touche. Upvoted! – paisanco

Verwandte Themen