본문 바로가기
게임

[루아] Lua 스크립트의 조건문과 반복문

by 업무자동화 2023. 8. 4.
반응형

유료 매크로 프로그램 다운로드

http://ngmsoftware.com/bbs/board.php?bo_table=product_review 

 

엔지엠소프트웨어

엔지엠 매크로는 복잡한 반복작업을 자동화할 수 있습니다. PC 게임, 모바일 게임을 최적으로 지원하며 모든 PC 프로그램 및 업무에 적용할 수 있습니다.

www.ngmsoftware.com

#매크로 #매크로프로그램 #메크로 #g매크로 #마우스매크로 #키보드매크로 #엑셀매크로 #키매크로 #수강신청매크로 #로지텍마우스매크로 #매크로키보드 #파이썬매크로 #매크로뜻 #매크로마우스 #로지텍매크로 #ld플레이어매크로 #오토마우스매크로 #키보드마우스매크로 #오토핫키매크로 #이미지매크로 #이미지인식매크로 #하드웨어매크로 #화면인식매크로 #선착순매크로 #이미지서치매크로 #한글매크로 #심플핫키 #simplehotkey #지존매크로 #짜맥 #챗굴

 

  • 엔지엠 커뮤니티 월 이용료: 4,500원, 1년 이용료: 55,000원 (전체 기능의 80프로)
  • 엔지엠 얼티밋 월 이용료: 6,500원, 1년 이용료: 77,000원 (전체 기능의 90프로)
  • 엔지엠 엔터프라이즈 월 이용료: 9,200원, 1년 이용료: 110,000원 (전체 기능 사용)

안녕하세요. 엔지엠소프트웨어입니다. 이전 시간에 루아 개발 환경을 설치하고, 간단한 예제를 몇가지 실습 해봤습니다. 오늘은 루아스크립트의 조건문과 반복문에 대해서 알아볼건데요. 프로그래밍 언어에서 가장 중요한 부분이라서 꼭~ 이해하고 넘어가는게 좋을거예요^^

 

1. 조건문

루아 언어에서 조건문은 VB와 비슷합니다. Java나 C#와는 다른데요. 저도 처음에 VB를 하다가 Java로 넘어올 때 문법이 달라서 햇갈렸던 적이 있습니다. 조건이란 참(True)과 거짓(False)으로 구분되는 어떤 동작을 실행하는 방법입니다. 설명이 좀 어려운데요. 단순하게 이야기 하면 이렇습니다. "배가 고프면 밥을 먹고, 아니면 그냥 있는다"와 같습니다. 아래 예제를 보면서 이해하는게 좋겠습니다.

function add(a, b)
    return a + b
end

a = 10
b = 20

bar = add(a, b)

function condition()
    if 10 > bar then
        return "NGM"
    else
        return "software"
    end
end

if a == 10 then
    print "a is 10"
elseif a == 20 then
    print "a is 20"
else
    print "unknown"
end

 

a 변수 값이 10이므로 아래와 같이 "a is 10"이 출력됩니다.

 

 

2. 반복문

반복문은 제어문의 조건문처럼 어떤 조건이 만족할 때까지 반복하는 명령문입니다. 루아에서는 while 반복뿐만 아니라 for, repeat 2개의 반복문이 존재합니다. 대부분의 언어들이 제공하는 반복문이 모두 있습니다. 참고로, 컴파일 언어들이 foreach를 제공하는데요. 루아에서도 객체를 반복할 수 있는 Generic 반복 함수가 존재합니다.

function whileTest()
    local foo = 10
    while foo ~=0 do
        print (foo)
        foo = foo - 1
    end
end

function repeatTest()
    local foo = 10
    repeat
        print (foo)
        foo = foo - 1
    until foo == 0
end

repeatTest()
whileTest()

 

whileTest 함수 내부에 선언된 로컬 변수 foo는 0이 아닐때까지 내부 실행 영역을 반복합니다. 이 때 주의해야 할 점은 while ~ 조건 ~ do라고 사용해야하고, 동시에 while 영역의 종료점에 end 키워드를 사용해서 영역이 끝나는 부분이라고 알려줘야 합니다. repeatTest 함수도 결과는 동일합니다. until 키워드에서 foo가 0과 같을 때까지라고 되어 있는것 같지만, foo가 0이 아닐 때 코드를 종료합니다. 아래는 가장 많이 사용하는 for 반복문입니다.

for foo = 1, 4 do
    print (foo)
end

for foo = 1, 10, 2 do
    print (foo)
end

 

코드를 실행하면 아래와 같은 결과를 확인할 수 있습니다. 첫번째 for 반복문에서 1부터 4까지 출력하고, 두번째 for 반복문은 2씩 건너뛰면서 출력합니다.

 

 

마지막으로 Generic loop in for에 대해 알아볼께요. pairs, ipairs, next, io.lines(), file:lines() 및 사용자 정의 반복문등 다양한 방식으로 반복문을 사용할 수 있습니다. 대표적으로 pairs, ipairs, next에 대해 예제를 실습 해보도록 할께요. pairs는 키/값의 쌍으로 된 반복 함수입니다. 파이썬의 딕셔너리를 출력하는것과 동일합니다.

foo = {a=1, b=2, c=3, "NGMsoftware"}

for key, value in pairs(foo) do
    print (key, value)
end

 

 

여기까지 간단하게 조건문과 반복문에 대해서 알아봤습니다. 다음에는 좀 더 유익한 내용으로 찾아올께요. 사실, 루아를 잘 사용하지 않다보니 이 강좌가 필요한 분들이 있을지 의문이긴 합니다. 대부분은 C나 C++로 만들어진 패키지를 붙여서 호출하거나 간단하게 테스트할 때 사용하니까요. 아무튼, 다음 내용도 기대해주세요^^

 

[ 각종 자동화 매크로 및 RPA 프로그램 제작 해드립니다. ]

[ 초보자도 쉽게 따라할 수 있는 기초 학습 강좌 보기 ]

 

원본 글 보기

http://ngmsoftware.com/bbs/board.php?bo_table=tip_and_tech 

 

엔지엠소프트웨어

엔지엠 매크로는 복잡한 반복작업을 자동화할 수 있습니다. PC 게임, 모바일 게임을 최적으로 지원하며 모든 PC 프로그램 및 업무에 적용할 수 있습니다.

www.ngmsoftware.com

#비활성매크로 #g102매크로 #철권매크로 #레이저마우스매크로 #ghub매크로 #녹화매크로 #키보드반복매크로 #로지텍마우스광클매크로 #플라스크매크로 #윈도우매크로 #비활성g매크로 #오토매크로 #자동사냥 #주식매크로 #오토핫키키보드 #오토핫키마우스 #오토핫키이미지 #지존오토 #기계식매크로 #하드웨어매크로 #무한반복매크로 #대량이메일발송매크로 #엑셀VBA매크로 #주식모니터링매크로 #이미지맥스 #심플핫키 #오토클리커 #UiPath #Brity #스푸퍼 #DKOM #모바일게임매크로 #다클라매크로 #다계정매크로 #인스타그램매크로 #짜맥매크로 #챗굴매크로

반응형

댓글