For 루프

서브다이어그램을 n번 실행합니다.

반복 터미널은 현재 루프의 반복 카운트를 반환하며, 이는 0부터 n-1까지의 범위에 해당합니다.

입력/출력

반복

현재 루프 반복 카운트. 루프 카운트는 항상 처음 반복에서 0으로 시작합니다.

최대 반복 횟수는 2,147,483,647, 231-1입니다.

2,147,483,647보다 큰 반복 카운트가 필요한 경우에는, 더 큰 정수 범위의 시프트 레지스터를 사용하면 됩니다.

1378

카운트

For 루프 안에 있는 코드의 실행 횟수. 0 또는 음수를 카운트 터미널에 연결하면, 루프는 실행되지 않습니다.

이 터미널은 또한 루프 카운트를 반환합니다.

1378

터널

데이터가 구조에 들어가고 나가는 포인트입니다.

터널은 또한 다음과 같은 타입의 기능을 수행할 수 있습니다.

  • 1378 마지막 값 유지—루프 경계를 통해 데이터를 전달합니다.
  • 1378 오토인덱스 값한번의 루프 반복에서는 터널이 입력인 경우 배열의 원소 한개를 처리하거나, 터널이 출력인 경우 데이터를 누적되는 배열에 추가합니다. 출력 터널에 오토인덱싱을 활성화하려면, 터널에서 마우스 오른쪽 버튼을 클릭한 후, 추가 모드 » 오토인덱스 값을 선택합니다.
  • 1378 연결하기—입력 배열의 모든 원소를 순서대로 추가하여, 입력 배열과 같은 차원의 출력 배열을 생성합니다. 이 터널은 [배열 만들기] 노드와 같은 방법으로 배열을 연결합니다.
  • 터널을 선택하고 아이템 탭에서 조건적 확인란에 확인 표시를 하여 모든 터널 타입에서 조건적 출력을 설정할 수 있습니다. 터널의 조건적 입력이 참인 경우, 루프는 해당하는 값을 터널에 씁니다. 터널의 조건적 입력이 거짓인 경우, 루프는 해당하는 값을 터널에 쓰지 않습니다.

    1378

    시프트 레지스터

    루프의 한 반복에서 다음 반복으로 값을 전달하는 한 쌍의 터미널입니다. 루프의 첫 반복 후, 터미널 쌍의 왼쪽 시프트 레지스터는 오른쪽 시프트 레지스터가 이전 반복에서 받은 값을 반환합니다.

    이전 반복에서 현재 반복으로 값을 전달하는 방법에 대한 더 자세한 정보는 이전 반복의 데이터 사용하기을(를) 참조하십시오.

    1378

    시프트 레지스터 생성

    한 루프 반복에서 다음 반복으로 데이터를 전달하는 한 쌍의 시프트 레지스터를 루프에 추가합니다.

    1378

    Examples

    다음 이미지는 루프가 0번 반복한 후 터널과 시프트 레지스터의 출력값을 보여줍니다.


    1378

    출력 패널 인디케이터 설명
    A
    1378

    For 루프가 0번 반복한 경우, For 루프의 모든 출력 터널은 헤딩 터널의 데이터 타입에 대한 기본값을 전달합니다.
    B
    1378

    모든 출력 시프트 레지스터는 왼쪽 시프트 레지스터의 입력에 연결된 값을 전달합니다.
    C
    1378

    입력 시프트 레지스터에 값이 포함되지 않은 경우, 출력 시프트 레지스터는 해당 시프트 레지스터의 데이터 타입에 대 한 기본값을 전달합니다.
    다음 설치된 예제는 프로그래밍 환경에서 검색하여 사용할 수 있습니다:
    • 단순 For 루프
    • 루프 터널 모드

    Programming Patterns

    • 지정된 횟수만큼 작업 반복하기
    • 배열의 모든 원소에 대해 작업을 한 번씩 반복하기

    루프 타이밍 컨트롤하기

    루프의 실행 속도를 컨트롤하는 방법에 대한 더 자세한 정보는 루프 타이밍을(를) 참조하십시오.

    이전 반복의 데이터 사용하기

    이전 반복에서 현재 반복으로 값을 전달하는 방법에 대한 더 자세한 정보는 이전 반복의 데이터 사용하기을(를) 참조하십시오.

    0번 실행 후의 터널 및 시프트 레지스터의 동작

    0번 실행하는 For 루프를 통해 데이터를 직접 연결한 경우, 출력 터널에 연결된 모든 출력 터미널은 해당 데이터 타입의 기본값을 디스플레이합니다. 출력 시프트 레지스터에 연결된 모든 출력 터미널은 입력 시프트 레지스터에 연결된 데이터를 디스플레이합니다. 입력 시프트 레지스터에 값이 포함되지 않은 경우, 출력 시프트 레지스터는 해당 시프트 레지스터의 데이터 타입에 대 한 기본값을 디스플레이합니다. 더 자세한 정보는 섹션을 참조하십시오.

    오토인덱싱 입력 터널이 있는 For 루프 반복 카운트 동작

    오토인덱싱이 활성화된 상태에서 카운트 터미널에 값을 연결하지 않는 경우, 루프는 자동으로 배열의 각 원소에 대해 한 번씩 반복합니다.

    오토인덱싱이 활성화되어 있는 동안 카운트 터미널에 값을 연결하는 경우, For 루프는 카운트 터미널과 입력 배열 크기 중 보다 작은 값을 선택하여 루프 반복의 횟수를 결정합니다.예를 들어, 10개의 원소가 있는 오토인덱싱된 배열이 루프에 입력되고 카운트 터미널에 15의 값을 연결하면, 루프는 10번 실행됩니다.

    For 루프는 여러 개의 오토인덱싱 입력 터널을 사용하여 여러 개의 배열에서 한 번에 한 원소를 처리할 수 있습니다.이 경우, 루프는 가장 작은 배열의 크기를 사용하여 루프 반복의 횟수를 결정합니다. 예를 들어, 각각 10개와 20개의 원소를 가진 2개의 오토인덱싱된 배열을 루프에 입력하면, 루프는 10회만 실행되고 첫번째 배열의 모든 원소와 두번째 배열의 처음 10개 원소까지만을 처리합니다.

    배열에 대한 For 루프 오토인덱싱 동작

    터널을 오토인덱스 값으로 설정한 경우, 루프는 1차원 배열에서 스칼라 원소를 인덱싱하고, 2차원 배열에서 1차원 배열을 인덱싱합니다. 출력 터널에 대해서는 반대로 적용됩니다. 스칼라 원소는 1차원 배열로 순차적으로 쌓이고, 1차원 배열은 2차원 배열로 쌓입니다.

    2D 배열에서 인덱싱은 열 경계가 아닌 행 경계에서 발생합니다.