수업 2: For 루프를 사용한 프로젝트 흐름
프로젝트에서 에서 으로 루프를 사용하는 경우에도 명령을 실행하는 동안 동일한 논리를 따릅니다. 예를 들어, 이 두 코드 샘플은 VR 로봇을 같은 방식으로 움직이게 만듭니다. 그러나을으로 반복하는 프로젝트에서는 이를 위해 두 개의 Drivetrain 명령을 4번 반복합니다.

for 루프는 일련의 명령을 지정된 횟수만큼 반복하는 데 사용됩니다. 으로 바꾸는 루프는 그 안에 있는 명령 시퀀스를 반복합니다(반복이라고도 함). Python for 루프에서 변수 'value'는 현재 반복을 추적하는 데 사용되고 키워드 'in'은 range함수를 사용하여 반복 횟수를 지정합니다. 
범위 함수는 루프가 반복(또는 반복)되어야 하는 횟수를 식별합니다. 원하는 횟수만큼 동작을 반복하려면 범위 함수의 매개변수를 설정합니다.
범위 함수는 기본적으로 루프가 완료되기 위해 반복해야 하는 내용을 지정하는 임시 목록을 만듭니다. 정사각형의 네 변을 그리는 것과 같은 반복적인 동작의 경우, 범위 함수는 (0, 1, 2, 3)의 임시 목록을 사용하여 VR 로봇이 해당 명령을 네 번 실행할 수 있도록 합니다. VR 로봇의 움직임은 여기에 표시된 것처럼 범위 함수의 매개변수에 따라 달라집니다.
![]() |
![]() |
구동계 명령이 0번 실행되었습니다. |
![]() |
![]() |
구동계 명령이 1회 실행되었습니다. |
![]() |
![]() |
구동계 명령이 2번 실행되었습니다. |
![]() |
![]() |
구동계 명령이 3번 실행되었습니다. |
![]() |
![]() |
구동계 명령을 4번 실행하여 사각형의 4면을 모두 완성했습니다. |
|
|
![]() |
구동계 명령을 5번 실행하여 정사각형을 완성한 후, 첫 번째 면을 다시 추적합니다. |
범위함수가 4에서 5로 바뀌었을 때 그려진 사각형의 모양은 바뀌지 않았지만 VR 로봇의 최종 위치는 바뀌었습니다. 따라서 기본범위함수인 10을 사용하여에서루프를 사용하면 동일한 정사각형 모양이 그려지지만 VR 로봇은 동작을 6번 더 반복합니다.
VR 로봇은 대 루프 헤더부터 마지막 들여쓰기 명령까지 명령을 따라 이동합니다. for루프 헤더는 VR 로봇이 for 루프 외부의 다음 명령으로 넘어가기 전에 루프 내부의 동작을 지정된 횟수만큼 반복해야 함을 나타냅니다. 들여쓰기된 줄은 대 루프 내부에 어떤 명령이 들어 있고 반복되어야 하는지를 나타냅니다.
귀하의 정보를 위해
VEXcode VR에서는wait명령이 항상for루프에 추가됩니다. wait명령의 목적은 VEXcode VR 플랫폼의 웹 기반 특성으로 인해 VEXcode VR이 의도한 대로 프로젝트를 제대로 실행할 수 있도록 하는 것입니다. for루프를 사용할 때는wait명령을 절대로 삭제해서는 안 됩니다. 삭제하면 프로젝트가 의도한 대로 실행되지 않을 수 있습니다.

에서 으로 이어지는 루프가 지정된 횟수만큼 실행되도록 설정하면, 필요한 반복을 완료했을 때 프로젝트가에서로 이어지는 루프를 통과할 수 있습니다. 프로젝트가 루프 외부의 다음 명령으로 넘어가려면 에서 루프의 범위함수의 매개변수에 도달해야 합니다. 아래 코드 샘플에서에서루프의 Drivetrain 명령이 4번 실행되면 프로젝트는에서루프에서 벗어나 펜 색상을 빨간색으로 설정하고 후진으로 주행합니다. 
미니 챌린지
이 프로젝트에서는 VR 로봇이 아트 캔버스 놀이터, 에 파란색 사각형을 그려야 하지만 프로젝트에 오류가 있습니다. 프로젝트를 편집하여 미니 챌린지를 해결하세요!

아래 영상은 미니 챌린지를 완료하는 방법을 보여줍니다. 로봇은 운동장 중앙에서 출발하여 큰 파란색 사각형의 네 변을 그립니다.
- 솔루션 영상을 시청하고 미니 챌린지를 완료하기 위해 VR 로봇이 어떻게 움직여야 하는지 검토해 보세요.
- 이 이미지와 일치하도록 Unit3Lesson2 프로젝트를 수정하거나 아래 코드를 복사하세요.
def main():
pen.move(DOWN)
pen.set_pen_color(RED)
drivetrain.drive_for(FORWARD, 600, MM)
범위(3)의 값에 대해:
drivetrain.drive_for(FORWARD, 600, MM)
drivetrain.turn_for(RIGHT, 90, DEGREES)
wait (5, MSEC)- 프로젝트를 시작하고 VR 로봇이 예상되는 동작을 완료하지 못하는 부분을 파악합니다.
- 프로젝트를 수정하고 프로젝트를 다시 실행합니다. VR 로봇이 예상되는 행동을 완료하는지 확인하세요.
- VR 로봇이 파란색 사각형을 그리지 않으면 이전 단계를 반복하여 다시 시도하세요. VR 로봇이 파란색 사각형을 그릴 때까지 프로젝트를 계속 수정하고 실행합니다.
- VR 로봇이 아트 캔버스 놀이터에 파란색 사각형을 성공적으로 그리면 프로젝트를 저장합니다.
축하해요! 미니 챌린지를 해결했습니다!











