커뮤니티
부탁 드립니다.
2026-05-17 09:35:32
55
글번호 232072
도움에 감사 드립니다.
실행시 증가값이 0 이거나 0이하가 되면 계산 불능이 됩니다.
해결방법이 있겠는지요?
input :최종값(100),증가값(20);
var : ii(0),cts(0);
cts = 0;
for ii = 0 to 최종값 step 증가값
{
if C >= C[ii] Then
cts = cts + (h-l);
Else
cts = cts - (h-l);
}
var1=ma(cts,30);
답변 1
예스스탁 예스스탁 답변
2026-05-18 10:47:51
안녕하세요
예스스탁입니다.
0이하의 값을 주시면 안됩니다.
0보다 큰 양수로 지정하셔야 합니다.
for문에서 증가값은 0부터 최종값까지 지정한 증가값으로 증가하면서
ii변수에 값을 저장하게 됩니다.
증가값이 0이면 값이 증가하지 않아 무한로프에 걸리게 되고
-1은 C[-1]과 같이 없는 값을 찾게 됩니다.
증가값으로 0보다 큰값을 지정하시거나
혹은 아래와 같이 0이하의 값이 지정되면 1로 지정되게 해서 사용하시면 됩니다.
input :최종값(100),증가값(20);
var : ii(0),cts(0);
cts = 0;
for ii = 0 to 최종값 step max(증가값,1)
{
if C >= C[ii] Then
cts = cts + (h-l);
Else
cts = cts - (h-l);
}
var1=ma(cts,30);
즐거운 하루되세요
다음글