커뮤니티

질문이 있어요.

프로필 이미지
sjpapa
2016-07-13 06:30:23
149
글번호 100010
답변완료
1,2,3 이라는 숫자를 단일 변수에 입력하고 매봉 완성시에도 이전값으로 123을 참조 하고 싶습니다. 쉽게 봉완성시마다 3 2 1을 현재값3 이전값 2 이이전값 1로써 불러 들이고 싶습니다. 그래서 저는 if dayindex=0 then var1=1; if dayindex=1 then var1=2; if dayindex=2 then var1=4; 이렇게 작성해 주었습니다. dayindex = 2 이 완료된 시점에 message로 찍어보면 var1 값은 4, var1[1] 값은 2,var1[2] 값은1 로 나옵니다.(이후 새로운 봉이 완성 되어도 var1 값은 4, var1[1] 값은 2,var1[2] 값은1 로 나오게 하려고 합니다만 안되네요) 저는 이후 시점인 dayindex 4나 5든 var1=4, var1[1]=2, var1[2]=1으로 고정 될줄 알았는데 dayindex 4 시점엔 var1=4, var1[1]=4, var1[2]=2 dayindex 5 시점엔 var1=4, var1[1]=4, var1[2]=4 으로 밀려 버리더군요. 저는 이전값을 참조해야 하는 상황이고 봉이 새로 완료 되어도 밀리지 않고 var1=4, var1[1]=2, var1[2]=1으로 이전값 포함 불러와야 하는데요. . 이럴 경우 어떻게 해야 하나요? 매봉 완선시마다 for 문으로 반복하면 되나 싶기도 하고요 방법 좀 부탁드립니다
시스템
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2016-07-13 11:52:43

안녕하세요 예스스탁입니다. 문의하신 내용은 수식으로 가능하지 않습니다. []는 이전값 참조입니다. 수식에서 특정변수에 저장된 이전값을 수정을 할수는 없습니다. for문으로도 이전값은 변경할수가 없습니다. 즉 수식에서는 과거봉의 지정된 변수에 저장된 이전봉의값을 변경할수 없습니다. 배열변수 만드셔서 0번배열에3, 1번배열에2, 3번배열에1 로 지정해 사용하 array : VV[3](0); VV[0] = 3; VV[1] = 2; VV[2] = 1; 과 같이 지정해 사용하시는 방법뿐이 없습니다. 즐거운 하루되세요 > sjpapa 님이 쓴 글입니다. > 제목 : 질문이 있어요. > 1,2,3 이라는 숫자를 단일 변수에 입력하고 매봉 완성시에도 이전값으로 123을 참조 하고 싶습니다. 쉽게 봉완성시마다 3 2 1을 현재값3 이전값 2 이이전값 1로써 불러 들이고 싶습니다. 그래서 저는 if dayindex=0 then var1=1; if dayindex=1 then var1=2; if dayindex=2 then var1=4; 이렇게 작성해 주었습니다. dayindex = 2 이 완료된 시점에 message로 찍어보면 var1 값은 4, var1[1] 값은 2,var1[2] 값은1 로 나옵니다.(이후 새로운 봉이 완성 되어도 var1 값은 4, var1[1] 값은 2,var1[2] 값은1 로 나오게 하려고 합니다만 안되네요) 저는 이후 시점인 dayindex 4나 5든 var1=4, var1[1]=2, var1[2]=1으로 고정 될줄 알았는데 dayindex 4 시점엔 var1=4, var1[1]=4, var1[2]=2 dayindex 5 시점엔 var1=4, var1[1]=4, var1[2]=4 으로 밀려 버리더군요. 저는 이전값을 참조해야 하는 상황이고 봉이 새로 완료 되어도 밀리지 않고 var1=4, var1[1]=2, var1[2]=1으로 이전값 포함 불러와야 하는데요. . 이럴 경우 어떻게 해야 하나요? 매봉 완선시마다 for 문으로 반복하면 되나 싶기도 하고요 방법 좀 부탁드립니다
프로필 이미지

예스스탁 예스스탁 답변

2016-07-13 14:26:33

안녕하세요 예스스탁입니다. 아래 내용 참고하시기 바랍니다. Ind와 Dep배열변수에 방별로 값을 지정하고 Period는 방 갯수와 동일한 기간으로 지정하셔야 합니다. Inputs: Period(4); Variables: Counter1(0), Counter2(0), Cnt(0),Cor(0); Array : Ind[100](0),Dep[100](0); Counter1 = 0; Counter2 = 0; Ind[0] = 4; Ind[1] = 3; Ind[2] = 2; Ind[3] = 1; Dep[0] = 4; Dep[1] = 3; Dep[2] = 2; Dep[3] = 1; For Cnt = 0 To Period - 1 Begin If (Ind[Cnt] >= Ind[Cnt + 1] AND Dep[Cnt] >= Dep[Cnt + 1]) OR (Ind[Cnt] < Ind[Cnt + 1] AND Dep[Cnt] < Dep[Cnt + 1]) Then Counter1 = Counter1 + 1; Else Counter2 = Counter2 + 1; End; If Counter1 + Counter2 <> 0 Then Cor = (Counter1 - Counter2) / (Counter1 + Counter2); Else Cor = 0; plot1(cor); 즐거운 하루되세요 > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 질문이 있어요. > 안녕하세요 예스스탁입니다. 문의하신 내용은 수식으로 가능하지 않습니다. []는 이전값 참조입니다. 수식에서 특정변수에 저장된 이전값을 수정을 할수는 없습니다. for문으로도 이전값은 변경할수가 없습니다. 즉 수식에서는 과거봉의 지정된 변수에 저장된 이전봉의값을 변경할수 없습니다. 배열변수 만드셔서 0번배열에3, 1번배열에2, 3번배열에1 로 지정해 사용하 array : VV[3](0); VV[0] = 3; VV[1] = 2; VV[2] = 1; 과 같이 지정해 사용하시는 방법뿐이 없습니다. 즐거운 하루되세요 > sjpapa 님이 쓴 글입니다. > 제목 : 질문이 있어요. > 1,2,3 이라는 숫자를 단일 변수에 입력하고 매봉 완성시에도 이전값으로 123을 참조 하고 싶습니다. 쉽게 봉완성시마다 3 2 1을 현재값3 이전값 2 이이전값 1로써 불러 들이고 싶습니다. 그래서 저는 if dayindex=0 then var1=1; if dayindex=1 then var1=2; if dayindex=2 then var1=4; 이렇게 작성해 주었습니다. dayindex = 2 이 완료된 시점에 message로 찍어보면 var1 값은 4, var1[1] 값은 2,var1[2] 값은1 로 나옵니다.(이후 새로운 봉이 완성 되어도 var1 값은 4, var1[1] 값은 2,var1[2] 값은1 로 나오게 하려고 합니다만 안되네요) 저는 이후 시점인 dayindex 4나 5든 var1=4, var1[1]=2, var1[2]=1으로 고정 될줄 알았는데 dayindex 4 시점엔 var1=4, var1[1]=4, var1[2]=2 dayindex 5 시점엔 var1=4, var1[1]=4, var1[2]=4 으로 밀려 버리더군요. 저는 이전값을 참조해야 하는 상황이고 봉이 새로 완료 되어도 밀리지 않고 var1=4, var1[1]=2, var1[2]=1으로 이전값 포함 불러와야 하는데요. . 이럴 경우 어떻게 해야 하나요? 매봉 완선시마다 for 문으로 반복하면 되나 싶기도 하고요 방법 좀 부탁드립니다