Post List

2015년 7월 23일 목요일

Python 기초 #03 : 반복 (Iteration)

1. while 

while 조건문:
    표현식

조건문에서 True 또는 False를 산출하는 조건을 판단합니다.
해당 조건이 True 일 경우 표현식 부분의 문장들을 실행 한 뒤,
다시 조건문을 판단하는 곳으로 이동합니다.
표현식에서 조건문의 조건을 변화시킬 수 있는 Code가 없다면 해당 while절은 무한-Loop에 빠지게 되어 영원히 나올 수 없게 됩니다.


2.  breakcontinue

break를 실행하면 해당 반복구문을 빠져나오게 되며,
continue를 실행하면 더 이상 아래의 표현식들을 실행하지 않고, 바로 반복구문의 조건판단 하는 곳으로 이동하게 됩니다.
다른 언어와 사용법이 같으므로 더 이상의 설명은 생략하겠습니다.


3. for 

for 반복변수 in 집합:
    표현식

while 문은 다른 언어와 큰 차이가 없지만, for문은 차이가 좀 있습니다.
Visual Basic, C#for each 와 같다고 생각을 하면 됩니다.
Modern C++ 에서는 ranged-for 라고 생각을 하시면 됩니다.
집합 내의 요소들을 하나씩 꺼내어 반복변수에 대입을 하고,
표현식에서는 반복변수를 이용하여 문장들을 수행합니다.
집합 내의 모든 요소들에 대해서 모두 다 수행한 뒤 Loop에서 빠져나오게 됩니다.
for문 내에서도 breakcontinue를 이용할 수 있습니다.

그럼 for (int i = 0 ; i < 10 ; i++) 와 같은 반복은 어떻게 할까요 ?
range 라는 함수를 이용하는 방법이 있습니다.
range 함수는 그안에 전달되는 집합이나 숫자 범위에 대해서 0번째 요소부터 n-1 번째 요소까지를 return 합니다.

for i in range(0,10):
    print i

연습문제 03
사용자가 done 를 입력할 때까지 반복적으로 숫자를 입력받는 프로그램을 작성하세요.
done을 입력하게 되면, 총계, 개수, 평균, 최소값, 최대값을 출력하세요.
사용자가 실수로 숫자가 아닌 값을 입력하면 오류 메세지를 출력하고, 다음 숫자를 입력받게 하세요.