-
반복문에 대해서 알아보죠
-
몇줄의 코드를 가진
while 반복문이 여기 있고
-
이 몇 줄만으로 메시지를 여러 번
출력할 수 있습니다
-
만일 메시지를 다음과 같이 바꾸면
모든 메시지가 바뀌게 됩니다
-
어떻게 작동하고 있는 것일까요?
잠깐 코드를 다시 살펴봅시다
-
먼저, 다시 처음으로 돌아가서
반복문을 사용하지 않고
-
이런 프로그램을 작성할 수 있는지
생각해봅시다
-
그러려면 아마도 수많은 문장을
계속 써야 할 것입니다
-
첫 번째 메시지를 입력하고
이 문장들이
-
화면의 끝까지 채워질 수 있도록
정말 많이 적어야 할 것입니다
-
이 방법은 많은 작업을 요구합니다
-
왜냐하면 채워야 하는 창이 너무 길고
심지어 지적을 하나 하자면
-
이 좌표가 70 이면 너무 먼 것 같아요
보다 작은 값인 60 정도가 맞겠네요
-
이 숫자는 작업에 영향을 줄 것입니다
메시지 간 간격이 줄어들면
-
이런 방식으로는 더 많은 메시지를
채워야 하죠
-
적어야 할 코드가 더 길어졌어요
-
이는 정말 고통스럽습니만, 고맙게도
우리에겐 반복문이 있습니다
-
지금부터는 이런 반복되는
코드들을 볼 때마다
-
반복문을 사용할 수 있을지
생각해봐야 해요
-
반복문은 각각의 시점에 코드를
조금씩 변경해가면서 반복합니다
-
어떻게 이 코드가 반복문을 가지도록
수정할 수 있을까요?
-
우선 while과 소괄호, 중괄호가 필요합니다
에러 메시지 창이 나오지만
-
아직 끝내지 않아서 그러니
걱정하지 마세요 곧 사라질 거예요
-
여러분은 반복문을 사용할 때마다
3가지 주요 질문들에 답을 해야 해요
-
여기 있어요
-
첫 번째 질문은
무엇을 반복하길 원하는가 입니다
-
반복하고 싶은 게 무엇이든
먼저 중괄호 안을 보세요
-
text 함수를 반복해서
사용하고 싶다면 이 안에 넣으세요
-
하지만 조금 문제가 있네요, 그렇죠?
-
현재는 같은 text 함수만 반복하고 있지
변경되고 있는 것은 없네요
-
이것이 두 번째 질문입니다
매번 변경되기를 원하는 것은 무엇입니까?
-
y 위치를 바꿔야겠군요
처음에는 60이고
-
그다음은 80이 되기를 원해요
따라서 변수를 사용해야겠군요
-
y 위치이니까 변수를 y라 부를게요
그리고 변수 y를 위쪽에 선언합니다
-
y 값을 40부터 시작할게요
그리고 y 값을 바꾸어야 해요
-
여기 아래에서 할 수 있어요
y = y+20이라 할게요
-
이렇게 되면 y 값은
매 번 커지게 되겠죠
-
우리가 전에 배운
보다 짧은 +=을 사용할 수도 있어요
-
정말 멋지네요
그러면 이제 세 번째 질문인
-
얼마나 오래 이것을 반복하기를 원합니까?
를 답해야 합니다
-
이것을 반복하고 싶어도
영원히 도는 것을 원하는 것은 아니죠?
-
영원히 돌리게 되면 우선 매우 오랫동안
기다려야 하고 브라우저도 아마 멈출 거예요
-
그러므로 우선은 이 페이지
맨 아래까지만 해볼게요
-
이는 y 값이 400보다
작을 때를 의미하므로
-
괄호 안에 400 보다 작다는
조건을 적어줍시다
-
그러면 메시지가 화면의
맨 아래쪽까지 써지게 됩니다
-
두 가지 방식의 코드의 길이가
같아 보이지만
-
첫 번째 방식은 사분의 일 조차도
완성되지 않은 코드이죠
-
두 번째 프로그램이 있으니까
이 부분은 지웁시다
-
이것이 어떻게 작동하는지
보다 자세하게 이해해 봅시다
-
y를 매번 출력해보고 싶으면
우선 메시지에 y is now를 입력한 뒤
-
메시지의 끝부분에
y를 붙여, 그 값을 볼 수 있습니다
-
매 순간, y 값은 20씩 값이 증가하고
그 값은 이 줄에서 정할 수 있습니다
-
원한다면 이를 50씩 증가하도록
할 수도 있습니다
-
이제 이 값은 50씩 증가하게 됩니다
-
이 변수의 값도 변경해볼 수 있습니다
-
이 변화가 프로그램이 언제 멈추는지에
어떠한 영향을 주는지 보세요
-
이것을 이해하기 위해서 여러분은
이를 if 문처럼 생각해볼 수 있어요
-
여기에는 이미 배운 불 연산식이 있고
-
그리고 이 안에는
실제 실행할 코드들이 있습니다
-
연산식이 참이면 실행되고
거짓이라면 끝으로 넘어갑니다
-
while 반복문에는
흥미로운 점이 있어요
-
그 비밀을 아래에 써볼게요
go back to the start of the loop
-
이것의 의미를 보자면 if 문처럼
-
구문의 끝에 오면 다음으로
계속 진행하는 대신
-
반복문을 돌 때마다 다시 처음으로 돌아가
연산식을 확인하게 됩니다
-
만약 조건이 참이라면
계속 작동하게 되죠
-
여러분이 예상하는 대로
반복문은 계속 반복됩니다
-
위로 다시 돌아가 조건을 확인합니다
-
y가 아직 279보다 작나요?
참이면 작동하고 또 조건을 확인하죠
-
만일 조건이 거짓이 되면
시작점으로 돌아갑니다
-
그리고 마침내 반복문을 벗어나
프로그램의 다음 부분이 실행됩니다
-
반복문을 이용하는 보다 흥미로운 방법들이
수없이 많고 곧 배워보게 될 거예요
-
이것은 그저 시작일 뿐이죠