point에 가장 근접한 수치를 var에서 찾고 해당 수치의 ID를 찾으려고 합니다.

loop
{
random,ran,-1.5,2.5
random,ran2,1~100
var .= ran "ID" ran2"`n"
if a_index = 7
break
}

위 루프문은 종요하지 않습니다.. 단지 point와 비교할 수치와 ID를 var에 저장하기 위해 작성했습니다.

loop,parse,var,`n
{
stringgetpos,var2,a_loopfield,ID
stringleft,var3,a_loopfield,%var2%
var4
.= var3 "`n"
}

var에서 id를 제외한 ran 수치만 var4에 저장합니다.

for i, v in StrSplit(RTrim(var4, "`n"), "`n", "`n")
{
if
(!smallest_diff or (Abs(point - v) < smallest_diff))
{
smallest_diff
:= Abs(point - v)
best_candidate
:= v
}
}
       
           
point에 가장 근접한 수치를 best_candidate에 저장합니다.

loop,parse,var,`n
{
ifinstring,a_loopfield,%best_candidate%
{
stringgetpos,checkvar2,a_loopfield,ID
checkvar2 := checkvar2+2
stringtrimleft,checkvar3,a_loopfield,%checkvar2%
break
}
}

그리고 best_candidate가 속한 ID를 var에서 구합니다.


point에 가장 근접한 수치를 var에서 찾고 해당 ID를 찾으려고 합니다. 좀 더 빠르게 찾는 방법이 없을까요?
고수분들의 도움이 필요합니다..

답글