ai-creator

[python 독학] 4. for - 반복문 (w/ 구구단) 본문

유치한 파이썬

[python 독학] 4. for - 반복문 (w/ 구구단)

ai-creator 2020. 7. 26. 12:49
반응형

유치한 파이썬에 오신 것을 환영합니다.

오늘은 반복문 - for 입니다.

오늘은 아래와 같은 순서로 배워보겠습니다.

 

1. 들어가며

2. for문을 배우는 이유? = 반복문을 배우는 이유?

3. for 사용법

4. 반복문으로 구구단 만들기

5. 확장하기

6. 정리하기

7. 생각하기

 

** 영상 : youtu.be/AkZFNYR5mEc


1. 들어가며

반복문 - for 라는 제목만 봐도 놀랍지 않으신가요?

뭐지? for는 ~를 위해서 아닌가? 라고 생각하시는 분들이 계시죠? 저도 처음 프로그램 언이를 배울때, 영어 뜻과 프로그램의 사용법이 상충이 되면서 이질감을 느꼈던 부분입니다. 

사실, 왜 반복문이 for인가? 라는 내용을 알려주기 보다, for는 반복문이다. for는 중요하다 등의 내용들만 실려 있어 마치 그냥 외워야 하는 것 처럼 느껴지죠.

 

그런데, for의 다른 의미를 생각해보면 어떤가요? '~하는 동안' 의 의미를 가지고 있죠.

그럼 이렇게 '기간'의 의미를 가지는 for와 비교되서 나오는 단어가 뭐가 있죠? 'while'이 있죠.

~하는 동안 ~해! ==> ~하는 동안 '반복'해서 ~을 해!로 연결할 수 있습니다.

" 내가 떡을 써는 동안, 너는 글을 쓰거라~"

 

이 내용을 컴퓨터와 프로그램 언어 분야로 가지고 와보시죠.

 

2. for문을 배우는 이유? = 반복문을 배우는 이유?

여러분은 컴퓨터를 왜 사용하시나요? 그리고 프로그램 언이는 왜 배우시나요?

저는 프로그램을 배우고, 컴퓨터를 활용하는 이유는 "연산" 과 "반복" 때문입니다.

- 내 머리로 안되는 어렵고 복잡한 연산을 시키고,

- 반복적으로 되풀이 되는 귀찮은 일들을 컴퓨터에게 시켜서

즉, 똑똑하지만 실수 없는 기계에게 "연산""반복"을 시켜 "자유"를 얻고 싶어서 배우죠.

 

바로 for문이 '반복'의 일을 도와 저에게 자유를 주는 기특한 문법이죠.

내가 노는 동안, 너(computer)는 국어, 영어, 수학 공부를 하고 있거라~

 

3. for 사용법

내가 노는 동안, 너는 국어, 영어, 수학 공부를 하고 있거라! 는 아래와 같이 표현할 수 있습니다.

for homework in ['국어', '영어', '수학']:
	print(homework + "공부를 하고 있습니다")

문법으로 접근하면, 이렇게 됩니다.

for 종류 in 반복할 종류들 :
     수행 사항

[설명]

- '반복할 종류들'은 list/dictionary 등으로 표현할 수 있고, 

- '종류'는 반복할 종류 중 1개를 받아주는 것이고,

- 수행사항은 반복해서 수행할 내용을 적습니다.

 

4. 반복문으로 '구구단' 만들기

그럼 구구단을 생각해보죠.

일단 2단을 만들어본다고 생각해보세요. 규칙성을 생각나지 않을때 제일 좋은 방법은 손으로 써보고, 귀찮음을 느끼는 부분입니다. 구구단을 손으로 써보세요.

저는 일일이 손으로 쳐봤는데요, 치면서 하;;;;; 귀찮다가 너무 느껴집니다.

자! 왜 귀찮았죠?

어짜피 1~9는 순서대로 있고 변화되는것 때문에 2x를 계속 반복해서 쓰고 있었자나요

그리고 연산은 어짜피 컴퓨터가 더 잘 하는거 아닌가요?? 꼭 제 머리를 써야하는건가요?? 

자! 그럼 반복되는 부분을 두고 프로그램을 만들어 봅시다.

빨간색은 반복되는 부분, 녹색은 연산하는 부분입니다.

일단 [1,2,3,4,5,6,7,8,9] 만 있으면 만사 ok!라고 눈치채셨나요?

for num in [1,2,3,4,5,6,7,8,9] :
	print("2 x", num, "=", 2*num)

colab에 수행해 본 결과 입니다. 짜잔~

2단이 금방 완성 되었죠?

문법을 설명해 보겠습니다.

for num in [1,2,3,4,5,6,7,8,9] :
	print("2 x", num, "=", 2*num)
for 종류 in 반복할 종류들 :
     수행 사항

[설명]

- '반복할 종류들'인 1~9를 리스트로 만듭니다. 

- '종류'를 의미하는 num이 반복할 종류 중 1개를 받아주게 되고

- 수행 사항은 2단의 모습이 되는거겠죠.

 

너무 쉽죠~~~??

그럼 2단~9단까지도 만들어 볼 수 있겠죠? 이 글을 보고 만들어보신 분들은 댓글 달아주세요^^ 부족한 부분에 대해서는 피드백 드리겠습니다~

 

5. 확장하기

초반에 for는 ~하는 동안 '반복'해서 ~을 해!라는 의미를 가진다고 말씀드렸어요.

그럼, 동일한 while도 ~하는 동안 '반복'해서 ~을 해!라는 의미를 가질 수 있을까요?  네!! 그렇습니다.

for, while 모두 반복문을 의미해요~

그럼 벌써 2가지 문법 clear!!

 

그리고 ~하는 동안 반복해라! 라고 말했지만, 어느 순간에 그만 했으면.... 하고 싶을때 있자나요.

누군가의 잔소리를 반복해서 듣고 있으면, 3번 정도만 반복하고 그만 했으면... 할때 처럼 말이죠.

이런 것도 프로그래밍으로 표현할 수 있습니다. 

그만하고 싶다! 빠져나오고 싶다! 지금을 깨부고 싶다! 어떤 영어 단어가 생각나시나요?

바로????!!!! break 이죠. 완전 쉽죠? ㅎㅎㅎ

 

다음시간에는 지금 배운 for, while, break에 대해서 배워보도록 하겠습니다.

 

6. 정리하기

1) for, while : 반복문 = ~하는 동안 '반복'해서 ~을 해!
2) 사용법
    for 종류 in 반복할 종류들 :
         수행 사항
3) 반복, 연산은 컴퓨터에게 시키자!

7. 생각하기

2단~9단까지를 만들어보시죠!

댓글 달아주시면, 피드백 드릴께요^^

 

 

 

 

 


도움이 되셨다면, 좋아요 / 구독 버튼 눌러주세요~

 

저작물의 저작권은 작성자에게 있습니다.
공유는 자유롭게 하시되 댓글 남겨주세요~
상업적 용도로는 무단 사용을 금지합니다.
끝까지 읽어주셔서 감사합니다^^

 

 

반응형
Comments