커뮤니티
문의 드립니다.
2017-11-14 09:34:03
108
글번호 114157
Arrays : Period[300](0);
Vars : X(0);
For X = 0 To 99
{
If Period[X]==Period[200] Then Period[200] = 666;
}
MessageLog("%.f", Period[200]);
If O < C Then Buy();
위 구문에서 보면 반복문에서 변수 X 값은 최대 99 까지 변하는데
If Period[X]==Period[200] 구문을 만족하면서
Period[200] 에 666 값이 할당이 됩니다.
이게 이해가 안갑니다.
X 값은 최대 99까지 할당 되는데
어떻게 If Period[X]==Period[200] 구문을 만족할수가 있는 건가요?
답변 1
예스스탁 예스스탁 답변
2017-11-14 14:09:11
안녕하세요
예스스탁입니다.
Arrays : Period[300](0);
Period는 총 300개의 방이 있는 배열변수입니다.
각방의 값은 모두 0이고 단순히 루프에서 0~99번방을 부른것일 뿐입니다.
첫루프에서 (X는 0일때)
Period[0] == Period[200] 이
0 == 0 으로 조건만족하므로
Period[200]에 666이 저장되는 것입니다.
아래식 적용해 로그확인하시기 바랍니다.
최초 0할당일때 값저장되어 계속 666값을 가지게 됩니다.
Arrays : Period[300](0);
Vars : X(0);
For X = 0 To 99
{
if Period[X]==Period[200] Then {
Period[200] = 666;
MessageLog("%.f %.f %.f",X,Period[X],Period[200]);
}
}
즐거운 하루되세요
> 무결점 님이 쓴 글입니다.
> 제목 : 문의 드립니다.
> Arrays : Period[300](0);
Vars : X(0);
For X = 0 To 99
{
If Period[X]==Period[200] Then Period[200] = 666;
}
MessageLog("%.f", Period[200]);
If O < C Then Buy();
위 구문에서 보면 반복문에서 변수 X 값은 최대 99 까지 변하는데
If Period[X]==Period[200] 구문을 만족하면서
Period[200] 에 666 값이 할당이 됩니다.
이게 이해가 안갑니다.
X 값은 최대 99까지 할당 되는데
어떻게 If Period[X]==Period[200] 구문을 만족할수가 있는 건가요?