2012-08-15 2 views
1

안녕 얘들 아 나는 꽤 Python에 익숙하지 않고이 프로그래밍 언어를 배우고있다. 모든 코드를 실행하는 데 Python IDE (GUI)를 사용하고 있습니다. 커스텀 프로 시저를 정의하는 주제까지 다루었습니다. 그러나 실행시 출력이 나오지 않습니다.파이썬에서 프로 시저를 정의하는 기본 사항은 무엇입니까?

다음은 아래 코드입니다. 두 개의 숫자를 더하여 입력 한 두 개의 숫자에 대한 결과를 인쇄하는 절차를 정의하고 싶습니다.

def sum(a,b): 
    print "The Sum Program" 
    c = sum(10,14) 
    print "If a is "+a+" and b is "+b++ then sum of the them is "+c 

내가 여기 잘못 생각한 것 같습니까?

+0

예외도 알려주세요. 나는 그것이 'SyntaxError'라고 확신하지만, 그것을 명백하게하고 싶을지도 모른다. –

+0

@MartijnPieters - 너무 재귀 오류가 있습니다.) – mgilson

+0

@mgilson : 그는 * 그가 * 일련의 질문을했다고 말했지만, 그를 서두 르자. :-) –

답변

6

여기에서 무한 루프를 만들었습니다. sum 메서드에서는 항상 sum 메서드를 호출합니다.

당신이해야 할 일은 sum 방법 밖에있는 인쇄 진술을 이동하는 것입니다. sum 메소드의 내용은 합계를 반환하는 return 문입니다.

그래서, 전체 프로그램은 다음과 같아야합니다 (편집 : 추가 str() 전화, 감사 @DSM) :

# The procedure declaration 
def sum(a,b): 
    return a+b 

# Your output code 
print "The Sum Program" 
a = 10 
b = 14 
c = sum(a, b) 
print "If a is "+str(a)+" and b is "+str(b)+" then sum of the them is "+str(c) 
+0

마지막 print 서술문에는 몇 가지 문제점이 있습니다.'a'도'b'도 정의되어 있지 않으며, 정수형이라면 어쨌든 문자열에 추가 할 수 없습니다. – DSM

+0

아, 내 편집이 안좋아. 고마워, @ DSM. – Eric

+3

실제로'format'을 사용 하겠지만 최소한이 것이 실행됩니다. : ^) – DSM

0
def sum(a, b): 
    print "The Sum Program" 
    c = a + b 
    print "If a is " + str(a) + " and b is " + str(b) + " then the sum of them is " + str(c) 

# call it somewhere else with parameters: 
sum(10, 14) 

당신은 비록 계산에서 IO를 분할해야합니다.

저는 Wikibooks on Python을 권장합니다. 그러나 기본과 그 이상을 다루는 몇 가지 자습서가 있습니다.

2

당신이 시도하고 싶을 수도있는 한가지는 함수를 다른 것으로 부르는 것입니다 (sum은 내장 파이썬 함수이기 때문에 여러분도 잘 사용하고있는 것 같습니다 :)). 당신은 이런 식으로 뭔가를 할 수 :

def my_sum(a, b): 
    return a + b 

print 'The Sum Program' 
a = 10 
b = 14 
c = my_sum(a, b) 
print ('If a is ' + str(a) + 
     ' and b is ' + str(b) + 
     ' then the sum of them is ' + str(c)) 

참고 str()의 -이 그들이 전체 문자열로 결합 할 수 있도록 문자열로 정수를 캐스팅하는 데 사용됩니다. 몇 가지 더 우아한 방법이 있지만 한 번에 한 단계 씩 진행됩니다.

+0

일단이 코드를 사용하면 구문 오류가 발생합니다. –

+0

@RahulGhosh 흠, 저에게는 효과가있는 것 같습니다. 어디서 오류가 발생 했습니까? 그것은 복사/붙여 넣기 일 수 있지만 그것을 밖으로 정렬 도와 드리겠습니다. – RocketDonkey

+0

정확한 문제의 이미지 부착. –

관련 문제