MoonNote

반응형

What are the dimensionalities of Output 1 and Output 2?

 

  1. Output 1: Scalar, Output 2: 1D Array
  2. Output 1: 1D Array, Output 2: Scalar
  3. Output 1: 1D Array, Output 2: 2D Array
  4. Output 1: Scalar, Output 2: 2D Array

정답 보기는 아래 더보기 클릭

 

더보기

정답 : 1. Output 1: Scalar, Output 2: 1D Array

배열 데이터를 반복문(For 또는 While 문)에 입력으로 넣어줄 때 오토인덱싱(AutoIndexing) 활성화와 비활성에 따른 루프 안쪽의 데이터의 타입을 맞추는 문제이다. 입력 터미널쪽을 자세히보면 우리가 흔히 텍스트 언어에서 지정하는 ' [ ] ' 마크가 붙어있는 터널이 인덱싱 활성화 터널이고 그냥 꽉 채워진 터널은 비활성화 터널이다.

코드에서의 조건을 보면 아래와 같다.
1. 1st Array  = [0]
2. 2nd Array = [0, 0]
3. For Loop set count = 1

For 문에서 우리가 반복 횟수를 설정하는 방법은 크게 2가지로 나뉘는데 ¹루프 카운트 설정²오토인덱싱 활성화이다.
루프 카운트 설정은 말그대로 몇회 반복할 것인지 직접 숫자 값을 지정하는 것을 말하며, 오토인덱싱의 활성화의 경우 배열 안쪽의 데이터 개수(배열 크기)만큼 루프 안쪽 코드를 자동적으로 반복 실행하게 된다. 따라서 LabVIEW에서는 오토인덱싱을 통하여 다음과 같은 형태의 반복 설정을 해주는 경우도 있다.


보면 따로 루프 카운트(N)을 설정하지 않았지만 해당 For문은 오토 인덱싱을 통하여 배열 크기만큼 4회 반복된다. 오토인덱싱이 활성화 될 때 배열 데이터가 하나씩 순차적으로 루프 안으로 들어가기 때문이다. 만일 오토인덱싱이 비활성화 되어있다면 배열 데이터가 한번에 루프 안쪽으로 들어오기 때문에 반드시 루프 카운트를 지정해주어야지 된다.

위의 내용들을 토대로 문제에서 물어보는 각각의 데이터 차원을 찾으면 1번째 배열은 스칼라 값 2번째 배열은 1차원 배열 타입을 가지기에 정답은 1. Output 1: Scalar, Output 2: 1D Array이다.

※ Tip : LabVIEW에서는 Wire의 굵기만 보고도 데이터의 차원에 대해서 한 눈에 파악할 수 있다.

숫자형 데이터 차원에 따른 와이어 굵기 비교

 

 

 

 

 

 

※ 이 글이 도움이 되었다면 "🤍공감" 버튼을 클릭해주세요. 클릭 한번이 글 쓰는데 큰 힘이 됩니다.

공유하기

facebook twitter kakaoTalk kakaostory naver band