커뮤니티
이해가 안가서요
2015-08-28 09:29:44
117
글번호 89879
input : setTime(30);
var : Hval(0), Lval(0), preHval(0), preLval(0);
var1 = TimeToMinutes(stime);
var2 = mod(var1,setTime);
if var2 == 0 then {
Hval = H;
Lval = L;
preHval = Hval[1];
preLval = Lval[1];
}
if var2 <> 0 then {
if H > Hval Then
Hval = H;
if L < Lval Then
Lval = L;
}
특히나 var2에 mod가 무슨뜻이고 어떤때 쓰는지 예제좀
부탁드리고 위에 var2==0 은 또 무슨뜻인지 이해가 안가서요?
줄당 오른쪽옆에 주석좀 꼭좀 달아주시면 감사드립니다~~환절기 날씨 감기조심하시고
주말 잘보내십시요 꾸벅
답변 1
예스스탁 예스스탁 답변
2015-08-28 12:26:10
안녕하세요
예스스탁입니다.
TimeToMinutes(시간)은 시간을 0시 이후에 경과된 분수로 리턴해 주는 함수이고
mod(num1,num2)는 num1을 num2로 나누어서 나머지값을 리턴해 주는 함수입니다.
즉 분수를 30으로 나누어 나머지가 몇인지 보고
전체시간을 30분 단위로 구분하는 것입니다.
예를 들어
9시는 TimeToMinutes이 540분 --> 540/30 --> 나머지가 0
9시10분는 550분 --> 550/30 --> 나머지가 10
9시20분는 560분 --> 560/30 --> 나머지가 20
9시30분는 570분 --> 570/30 --> 나머지가 0
9시40분는 580분 --> 580/30 --> 나머지가 10
9시50분는 590분 --> 590/30 --> 나머지가 20
10시는 600분 --> 600/30 --> 나머지가 0
위와 같이 나머지가 변하게 됩니다.
그러므로 나머지가 0인(나누어서 정수로 딱 떨어지는 시간) 봉이
새로운 30분봉이 시작하는 시간입니다.
수식에서
if var2 == 0 then
은 새로운 30분이 시작하면 이라는 의미입니다.
var1 = TimeToMinutes(stime);#시간을 0시 이후에 경과된 분수로 변경
var2 = mod(var1,setTime); #var1값을 30으로 나누어 나머지값 계산
if var2 == 0 then {#나머지가 0이면(30분 시작봉)
Hval = H; #Hval에 초기값으로 고가 저장
Lval = L; #Hval에 초기값으로 저가 저장
preHval = Hval[1];#직전 30분간 최고가
preLval = Lval[1];#직전 30분간 최저가
}
if var2 <> 0 then {#나머지가 0이 아니면
if H > Hval Then #Hval보다 큰 고가가 발생하면
Hval = H; #Hval에 새로운 고가를 저장
if L < Lval Then #Lval보다 작은 저가가 발생하면
Lval = L;#Lval에 새로운 저가를 저장
}
즐거운 하루되세요
> 개미왕초 님이 쓴 글입니다.
> 제목 : 이해가 안가서요
> input : setTime(30);
var : Hval(0), Lval(0), preHval(0), preLval(0);
var1 = TimeToMinutes(stime);
var2 = mod(var1,setTime);
if var2 == 0 then {
Hval = H;
Lval = L;
preHval = Hval[1];
preLval = Lval[1];
}
if var2 <> 0 then {
if H > Hval Then
Hval = H;
if L < Lval Then
Lval = L;
}
특히나 var2에 mod가 무슨뜻이고 어떤때 쓰는지 예제좀
부탁드리고 위에 var2==0 은 또 무슨뜻인지 이해가 안가서요?
줄당 오른쪽옆에 주석좀 꼭좀 달아주시면 감사드립니다~~환절기 날씨 감기조심하시고
주말 잘보내십시요 꾸벅