Colin Sherland
Colin Sherland

Reputation: 31

Syntax error in if...elif...else

tax calculator

def computeTax(maritalStatus,userIncome):
  if maritalStatus == "Single":
    print("User is single")
    if userIncome <= 9075:
      tax = (.10) * (userIncome)
    elif userIncome <= 36900:
      tax = 907.50 + ((.15) * (userIncome - 9075))
    elif userIncome <= 89350:
      tax = 5081.25 + ((.25) * (userIncome - 36900))
    elif userIncome <= 186350:
      tax = 18193.75 + ((.28) * (userIncome - 89350))
    elif userIncome <= 405100:
      tax = 45353.75 + ((.33) * (userIncome - 186350))
    elif userIncome <= 406750:
      tax = 117541.25 + ((.35) * (userIncome - (405100)
    else:                                            # getting syntax error here
      tax = 118118.75 + ((.396) * (userIncome - (406750))
    return tax
  else:
    return "placeholder"

def main():
  maritalStatusMain = input("Please enter your marital status (Single or Married)")
  userIncomeMain = float(input("Please enter your annual income"))
  finalTax = computeTax(maritalStatusMain,userIncomeMain)
  print(finalTax)
main()

When I remove or add statements the syntax error seems to jump around.

Upvotes: 0

Views: 72

Answers (1)

CDspace
CDspace

Reputation: 2689

A quick glance at the lines around it, shows a missing parenthesis

...
  tax = 45353.75 + ((.33) * (userIncome - 186350))    # <- two ending parens
elif userIncome <= 406750:
  tax = 117541.25 + ((.35) * (userIncome - (405100)   # <- one ending paren, plus extra paren around 405100
else:
...

That's probably all it is, unless the copy+paste into the question failed

Upvotes: 1

Related Questions