2016-10-17 6 views
-4

파이썬 프로그램이 실행되지 않습니다. 임 메신저 확실한 뭔가를 놓치지 만, 메신저 꽤 틀렸어. 누구든지 내게 빌려 줄 수 있니? 고맙습니다!파이썬에 들여 쓰기

내 파이썬 프로그램의 밤은 실행

def main(): 
 
    sales = getSales() 
 
    advancedPay = getAdvancedPay() 
 
    commRate = DetermineCommRate(sales) 
 
    pay = (sales * commRate) - advancedPay 
 
    print("The pay is $". format(pay, ",.2f"), sep="") 
 
    
 
if pay < 0: 
 
    print("The salesperson must reimburse") 
 
    print("the company") 
 

 
def getSales(): 
 
    monthlySales = float(input("Enter the monthly sales: ")) 
 
    return monthlySales 
 

 
def getAdvancedPay(): 
 
    print("Enter the amount of advanced pay or ") 
 
    print("Enter 0 if no advanced pay was given. ") 
 
    advancedPay - float(input("Advanced pay: ") 
 
    return advancedPay 
 
    
 

 
def DetermineCommRate 
 
    if sales < 10000: 
 
     rate = 0.10 
 
    elif sales >= 10000 and sales <= 14999.99: 
 
     rate = 0.12 
 
    elif sales >= 15000 and sales <= 17999.99: 
 
     rate = 0.14 
 
    elif sales >= 18000 and sales <= 21999.99: 
 
     rate = 0.16 
 
    else: 
 
     rate = 0.18 
 

 
    return rate 
 

 
main()
. 임 메신저 확실한 뭔가를 놓치지 만, 메신저 꽤 틀렸어. 누구든지 내게 빌려 줄 수 있니? 고맙습니다!

+0

'advancedPay에 구문 오류에서 실행되도록 들여 쓰기되어야한다 : ")'''-'를'='로 바꾸고 닫는 괄호를 추가하십시오 –

+0

다른 문제는'Def DetermineCommRate'가 제대로 쓰여지지 않았기 때문에 닫는 괄호와 콜론 =>'def DetermineCommRate() :' – idjaw

+3

부적절한 구문을 사용하고 있습니다. 암호. – TigerhawkT3

답변

1

salesmain()에서 지역 변수, 당신은 DetermineCommRate에 액세스를 시도하고 있으며, 해당 기능

def DetermineCommRate(sales): 

의 정의에 구문 오류가 현재 판매를 전달하고 있지만 승인하지는 않습니다. 플로트 (입력 ("고급 유료 -

은 또한 당신의 다음 행은 주()

if pay < 0: 
    print("The salesperson must reimburse") 
    print("the company") 

그리고이 라인이 너무

advancedPay = float(input("Advanced pay: ")) 
0

감사합니다; 잘못된 물건을 삭제하고 프로그램 작업을 계속했습니다.

구문 오류가 누락되었습니다. advancedPay의 입력에서 괄호를 닫고, DetermineCommRate의 선언을 완료하고, 블록을 지불하는 경우 을 들여 쓰고 사용 (하나의 인수)을 사용하여 해당 선언 (번호 & 매개 변수)을 조정하십시오.

최종 인쇄에 서식 문제가 있습니다. 예제를 다시 확인하고 으로 인쇄하도록 사양을 수정하십시오. 내가 무엇을 볼 수에서

def main(): 
    sales = getSales() 
    advancedPay = getAdvancedPay() 
    commRate = DetermineCommRate(sales) 
    pay = (sales * commRate) - advancedPay 
    print("The pay is $ {0:8.2f}". format(pay), sep="") 

    if pay < 0: 
     print("The salesperson must reimburse") 
     print("the company") 

def getSales(): 
    monthlySales = float(input("Enter the monthly sales: ")) 
    return monthlySales 

def getAdvancedPay(): 
    print("Enter the amount of advanced pay or ") 
    print("Enter 0 if no advanced pay was given. ") 
    advancedPay = float(input("Advanced pay: ")) 
    return advancedPay 

def DetermineCommRate(sales): 
    if sales < 10000: 
     rate = 0.10 
    elif sales >= 10000 and sales <= 14999.99: 
     rate = 0.12 
    elif sales >= 15000 and sales <= 17999.99: 
     rate = 0.14 
    elif sales >= 18000 and sales <= 21999.99: 
     rate = 0.16 
    else: 
     rate = 0.18 

    return rate 

main() 
+0

을 사용합니다. python을 사용하여 3 –

+0

하지만 문제는 하나만 있습니다. 내가 모든 숫자를 입력 할 때 나는 ouput :: –

+0

"임금은 $이다."그러나 나는 그 뒤에 숫자를 얻지 못한다. –