0:00:00.000,0:00:04.238 제 친구들을 출력하는 배열로 돌아왔어요 0:00:04.238,0:00:07.007 그런데 저를 굉장히 거슬리게 하는 것이 있네요 0:00:07.007,0:00:11.295 새로운 친구를 배열에 추가할 때마다[br]새로운 text 명령어를 추가해야 해요 0:00:11.295,0:00:13.378 Winston을 추가해 볼게요 0:00:13.378,0:00:16.011 자동으로 나타나지는 않아요 0:00:16.011,0:00:22.440 그를 나타나게 하고싶으면 'text(myFriends[3]' [br]을 쓰고 y좌표를 바꿔야 하죠 0:00:22.440,0:00:24.972 이렇게 하면 일이 너무 많아요 0:00:24.972,0:00:31.587 배열에 누군가를 추가할 때마다 text 명령어도[br]자동으로 되었으면 좋겠어요 0:00:31.587,0:00:34.736 반복문에 대해 배웠던 것 기억나세요? 0:00:34.736,0:00:38.378 반복문은 같은 코드를 반복해서[br]사용할 때 쓰면 좋은 방법이에요 0:00:38.378,0:00:43.273 마치 나무나 풍선들을 한 줄로[br]세운다거나 할 때 말이죠 0:00:43.273,0:00:48.764 반복문은 배열의 각 요소들에 대해[br]코드를 실행할 때 쓰면 좋아요 0:00:48.764,0:00:54.182 사실 여러분들이 배열을 쓸 때마다[br]반복문을 함께 사용하게 될거에요 0:00:54.182,0:00:57.949 둘은 굉장히 잘 어울리거든요 0:00:57.949,0:01:03.736 제 친구들의 이름을 출력할 때 매번[br]명령어를 쓰지 않고 반복문을 사용해볼게요 0:01:03.736,0:01:07.795 반복문을 사용할 때의 세 가지 질문들로 시작할게요 0:01:07.795,0:01:09.926 첫번째, 뭘 반복해야하나요? 0:01:09.926,0:01:13.087 여기 뭐가 반복되나요?[br]text 명령어죠. 0:01:13.087,0:01:15.178 매번 무엇을 바꿔야 하나요? 0:01:15.178,0:01:17.658 여기 뭐가 다른지 한번 살펴볼게요 0:01:17.658,0:01:26.138 y좌표와 현재 인덱스군요[br]그러니까 친구 번호와 y좌표 0:01:26.138,0:01:33.570 몇 번 반복해야하죠?[br]친구가 없을 때까지 반복해야해요 0:01:33.570,0:01:37.440 이제 필요한 것을 알았으니[br]반복문을 만들 수 있어요 0:01:37.440,0:01:42.033 반복문에서 우리가 어디까지 와 있는지를 [br]알려주는 카운터 변수로 시작할게요 0:01:42.033,0:01:44.546 그러니까 'var friendNum = 0;' 으로요 0:01:44.546,0:01:50.408 0부터 시작할거에요[br]배열의 첫번째는 0인걸 기억하세요 0:01:50.408,0:01:52.596 다음에 여기 while문을 쓸게요 0:01:52.596,0:01:57.664 'while(friendNum < myfriends.length)' 0:01:57.664,0:02:04.462 현재 카운터 변수와[br]배열 요소의 총 개수를 비교할 거에요 0:02:04.462,0:02:07.588 반복문 안에는 text명령어를 쓸거에요 0:02:07.588,0:02:15.200 'text(myFriends['라고 쓰고, 여기에 숫자 대신 'friendNum'을 쓰세요 [br]왜냐하면 그것이 현재의 순서를 말해주는 것이니까요 0:02:15.200,0:02:17.961 지금은 좌표를 고정시켜 둘게요 0:02:17.961,0:02:25.380 지금은 friendNum을 바꾸지 않아서[br]무한반복 에러가 발생해요 0:02:25.380,0:02:28.020 매번 friendNum을 증가시키는 걸 잊지마세요 0:02:28.020,0:02:32.720 아니면 조건이 항상 참이기 때문에[br]반복문이 무한히 수행될 거에요 0:02:32.720,0:02:38.651 여기 뭔가 생겼네요[br]예전 코드는 주석으로 처리할게요 0:02:38.651,0:02:43.137 모든 이름들이 나타났지만[br]다 겹쳐져 있어요 0:02:43.137,0:02:45.706 y좌표를 바꿔보도록 하죠 0:02:45.706,0:02:50.111 'friendNum * 30'으로 할게요 0:02:50.111,0:02:55.129 낫긴한데 Sophia가 화면 밖으로 벗어났군요[br]얘가 알면 별로 좋아하지 않을 것 같아요 0:02:55.129,0:02:59.628 여기 30을 더할게요[br]이제 30만큼 내려왔네요 0:02:59.628,0:03:04.294 아름답네요![br]반복문을 사용해 배열을 출력하게 되었어요 0:03:04.294,0:03:12.679 이제 OhNoesGuy나 Sal을 array에 추가하면[br]바로 제 친구가 되는 거에요 0:03:12.679,0:03:21.161 항상 배열 전체를 훑기 때문에[br]새 친구들을 자동으로 보여줄 거에요 0:03:21.161,0:03:24.296 예전 코드는 더 이상 필요없으니 지울게요 0:03:24.296,0:03:28.237 이 코드가 어떤 일을 하는지 다시 살펴볼게요 0:03:28.237,0:03:31.628 friendNum = 0 부터 시작해요 0:03:31.628,0:03:34.483 그리고 friendNum이 배열의[br]현재 길이보다 작은지 체크해요 0:03:34.483,0:03:37.841 0은 6보다 작아요[br]참이죠 0:03:37.841,0:03:41.712 그러면 반복문안으로 들어가서[br]text명령어를 수행해요 0:03:41.712,0:03:44.294 처음에는 myFriends[0] 에요 0:03:44.294,0:03:47.295 다음엔 30 + 0 * 30 이고요 0:03:47.295,0:03:53.712 그러니까 Sophia를 (10,30)위치에 출력해요 0:03:53.712,0:03:56.295 그리고 friendNum++ 을 하니까 1이 되요 0:03:56.295,0:04:00.251 다시 돌아가서 "1은 myFriends.length[br]보다 작지? 응, 맞아" 를 하는거에요 0:04:00.251,0:04:02.606 그리고 또 하고, 또 하고, 또 계속 반복 해요 0:04:02.606,0:04:04.610 마지막으로 Sal이 나와요 0:04:04.610,0:04:11.622 기억하세요. Sal은 6번째 요소지만[br]0에서 시작하니까 인덱스는 5에요 0:04:11.622,0:04:14.266 5가 6보다 작나요?[br]그렇죠 0:04:14.266,0:04:16.182 myFriends[5]를 출력하게 돼요 0:04:16.182,0:04:21.628 그럼 이 값이 6이 될 거고[br]"6이 6보다 작나요?" 아뇨. 같죠 0:04:21.628,0:04:25.440 이건 거짓이 될 거에요[br]여섯 번째 요소를 출력하지 않겠죠 0:04:25.440,0:04:29.272 6번 인덱스엔 아무것도 없으니까 괜찮아요 0:04:29.272,0:04:33.392 6번째 요소는 있지만[br]6번 인덱스엔 아무것도 없어요 0:04:33.392,0:04:40.030 좀 헷갈릴 수 있지만[br]곧 익숙해 질거에요 0:04:40.030,0:04:42.432 좋아요. 이게 반복문이에요 0:04:42.432,0:04:46.585 만약 for문을 더 좋아하면[br]for문을 사용해도 돼요. 0:04:46.585,0:04:54.252 for문에서는 'for'랑 'var friendNum = 0;' [br]을 쓰고 여기 조건을 쓸게요 0:04:54.252,0:04:58.677 'friendNum < myFriends.length;' 0:04:58.677,0:05:01.672 그리고 증가하는 부분도요[br]'friendNum++' 0:05:01.672,0:05:06.711 for문 안에는 이 코드를 쓰면 돼요 0:05:06.711,0:05:09.710 여러분이 보이도록 x좌표를 바꿀게요 0:05:09.710,0:05:12.085 둘 다 완전히 같은 일을 해요[br] 0:05:12.085,0:05:14.070 어떤 걸 사용할지는[br]여러분 마음이에요 0:05:14.070,0:05:17.196 요점은 반복문을 배열과 함께[br]사용하면 좋다는 거에요 0:05:17.196,0:05:21.181 왜냐면 여러분들을 훨씬[br]강력하게 해줄거니까요