NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 팁 앤 테크
  • 매뉴얼

    팁과 테크니컬 노하우를 확인하세요.

    팁 앤 테크

    팁과 테크니컬 노하우를 확인하세요.

    본 사이트의 컨텐츠는 저작권법의 보호를 받으므로 무단 복사, 게재, 배포 등을 금합니다.

    기타 변수란? 변수에 대한 이해.

    페이지 정보

    본문

    안녕하세요. 소심비형입니다. NGM에서 말하는 변수에 대해 자세히 설명해야 할 필요가 있다고 생각되어 이 글을 작성하게 되었습니다. 변수에 대한 내용은 메뉴얼을 참고하시고, 여기서는 동작 방식에 대해 알아보도록 하겠습니다.

     

    우선 변수를 하나 추가하고, 속성을 보시죠. 아래 그림처럼 변수를 사용하려면 변수의 형식을 먼저 설정해야 합니다. ①변수의 형식은 아래와 같습니다.

    • String: 문자를 나타내며 다음과 같은 값을 가집니다. 모든 데이타는 문자로 변환됩니다.
      - 안녕하세요.
      - 127
      - 127.7876
      - A, B, C, D, E
    • Double: 배정밀도 부동 소수점으로 127.7867과 같이 입력할 수 있습니다.
    • Array: 1차원 배열로 A, B, C, D, E와 같이 입력할 수 있습니다.
    • DataTable: 내부 데이타 테이블로 열과 행을 가지는 데이터 구조를 나타냅니다.
    • Point: X와 Y 값을 가지는 모니터상의 특정 위치로 좌표라고 부릅니다.
      - Location은 같은 의미입니다.
    • Int: 정수형 값입니다. 1, 2, 3과 같이 정수 값을 입력할 수 있습니다.
    • Size: 내부적으로는 Point와 동일한 자료 구조입니다. 다만 Width, Height로 나뉩니다.
    • Rectangle: Point와 Size가 합쳐진 자료형입니다. 이미지 서치 또는 매치할 때 찾은 이미지의 위치와 크기가 이 자료형입니다.
    img.png

     

     

    ①변수 형식은 단순히 ②기본 값을 가져오기 위한 이정표 같은 정보입니다. ①변수 형식을 String으로 설정하고 ②기본 값을 Int에 입력하면 당연히 변수에 저장되지 않습니다. 동일한 형식의 기본 값에 설정해야 합니다. 물론, 기본 값이 없을수도 있습니다. ①변수 형식을 선택하고 값이 없으면, 이 액션이 실행될 때 컴퓨터 내부에는 변수 이름만 저장됩니다. 그리고 ①변수 형식은 사라지고 내부적으로 자동 처리되도록 동작합니다. 아래와 같은 스크립트를 만들었다고 가정해봅시다.

    1. 변수: 정수 (10)
    2. 사칙연산: 변수 / 3 = 0.33333
    3. 메시지박스: 설명 (0.33333)

     

    위 내용을 보면 정수형 변수에 10을 넣고 사칙 연산을 통해 3으로 나누기를 한 내용입니다. 그리고, 결과를 메시지박스의 설명(String)에 표시했습니다. 이 결과는 0.33333이됩니다. 내가 의도한 값은 아마도... 0이되기를 바랬을겁니다-_-;

     

    그렇다면 메시지박스가 아닌 좌표의 X에 변수 값을 넣으면 어떻게 될까요? 예상한데로 0이 표시됩니다. 좌표의 X는 정수 형식이기 때문입니다. 자동으로 데이타 자료 구조에 맞게 값을 판단하기 때문입니다. 정리하면 변수를 추가할 때 변수 형식은 단순히 기본 값이 어디에 있는지 판단하기 위한 휘발성 정보일뿐 지속되지 않습니다. 일단 변수에 데이타가 들어가면 스크립트를 만든 사람말고는 어떤 자료 구조를 가지는지 알 수 없습니다. 그래서 변수 값을 가져올 때 대상이 되는 속성의 자료 구조에 맞게 변환해서 넣어주게 되어 있습니다. 물론, 알아서 변환할 수 없으면 에러를 발생시키고 아웃풋에 내용을 표시합니다.

     

    문자를 숫자로 연산할 수는 없지만, 숫자나 배열, 기타 다른 형식은 모두 문자로 표현이 가능합니다. 그리고 숫자들은 연산될 때 모두 부동 소수점으로 처리됩니다. 정수로 사용하려면 변수 업데이트에서 정수 형식을 선택하고 업데이트 해야 하죠. 또는 정수 속성에 값을 넣거나 사칙연산의 올림, 반올림, 버림을 통해 정수로 변경해야 합니다. 궁금한 내용은 댓글로 남겨주시면 친절하게(?) 답변 드리도록 하겠습니다.

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    댓글목록

    등록된 댓글이 없습니다.