<IF조건문>
💡 IF : 조건에 따라 다른 명령을 수행하는 statement. (조건문, conditional statement)
Source : https://ko.wikipedia.org/wiki/순서도#/media/파일:LampFlowchart_ko.svg
# if statement syntax example
if condition:
<statement>
<statement>
...
elif condition:
<statement>
...
else:
<statement>
...
- python에서는 조건문을 if statement로 다룹니다.
- 프로그래밍에서 조건에 따른 명령을 수행하는 건 굉장히 중요합니다.
- 프로그램의 규칙은 모두 조건에 따른 분기(branch)에 따라 결정됩니다.
Key Points
- if문을 사용할 땐, :사용에 주의합니다.
- 조건문을 이용한 프로그래밍을 한다는건, 의사결정(decision making)을 하는 것과 같습니다.
- 조건에서 빠지는 것들이 없는지 항상 체크합니다. 보통 edge case에서 에러가 자주 납니다. 가장 쉬운 예시로 list의 처음과 끝의 원소를 indexing 하는 경우입니다. (이를 boundary condition이라고 합니다.)
Hands-on
- 커피 자판기가 있습니다. 이 자판기는 300원을 넣으면 커피를 주고, 300원보다 적은 돈을 넣은 경우에는 거스름돈을, 300원보다 많은 돈을 넣으면 커피와 거스름돈을 줍니다. 이 자판기가 수행되는 방식을 flow chart로 그려보세요. (손으로 그려서 핸드폰 카메라로 찍은 다음 image를 삽입해 보세요)
<FOR, WHILE반복문>
💡 for, while : 조건에 따라 반복 작업을 수행해야 할 때 사용하는 statement(반복문, iteration)
Source : https://www.codingem.com/flowchart-loop/
- Python에서는 for, while statement로 반복 수행을 다룹니다.
- 프로그래밍에서 가장 중요한 두 가지가 조건과 반복입니다.
- 컴퓨터는 단순 반복 계산에 최적화된 기계입니다.
- 어떤 작업을 반복하게 할 것인가? 를 잘 생각해야 합니다.
# while statement syntax example
while condition:
<statement>
<statement>
...
- while statement는 조건에 따른 반복 수행을 합니다.
- 조건이 만족하는 동안 명령을 수행합니다.
- 특정 횟수를 반복하는 게 아닌, 조건의 만족 여부에 따라 반복을 수행합니다.
# for statement syntax example
for iterator in iterable_object:
<statement>
<statement>
...
- for statement는 횟수에 따른 반복 수행을 합니다.
- 특정 횟수를 지정할 수도 있고, List 같은 sequence를 처음부터 끝까지 반복하게 할 수도 있습니다.
- 주어진 여러 개의 데이터를 순서대로 다룰 때 많이 사용됩니다.
Key Points
- for, while문을 사용할 때도 : 사용을 주의합니다.
- 반복문을 사용하려면 하려는 일을 “반복 가능하게” 바꿔주어야 합니다. → decomposition
- 조건문과 함께 사용되어 프로그램의 로직(logic)을 구성합니다.
Hands-on
- 앞에서 사용했던 커피 자판기에 커피가 5개 있다고 합시다. 이 커피가 다 떨어질 때까지, 자판기를 운영한다면 앞에서 그린 flow chart는 어떻게 수정이 되어야 할까요? flow chart를 수정하여 봅시다.