커뮤니티
수식문의 드립니다.
2009-07-15 04:28:49
779
글번호 23470
항상 친절한 답변 감사드립니다.
두가지 질문을 드립니다.
1. 예를들어 10개의 Array "Clx[10]" 가있습니다.
Clx는 값이 무작위로 저장이 되어있습니다.
Clx 값중에는 현재값보가 큰것들도 있고 작은 것들도 있습니다.
이때 현재값과 Clx값을 비교했을 때 "큰값중 현재값과 가장 가까운 값 Uppivot"과
"작은값중 현재값과 가장 가까운 값 Dnpivot"을 구하여 저장하는 식이 필요합니다.
2. 예를들어 20개의 Array "test[20]" 가있습니다.
여기에 저장되어 있는 값은 무작위로 저장되어있으며 내림차순 또는
오름차순이 아닙니다.
이 값들을 내림차순이나 오름 차순으로 정렬하더라도 값들의 간격은
일정하지 않습니다.
예를들면 test[1]=180, test[2]=183, test[3]=182.5 test[4]= 183.1 ......
이들 값들중 두수 또는 세수, 또는 네수 등 비교하는 대상의 수에 상관없이 간격의
차이가 0.5가 되지 않으면 0.5범위에 들어 있는 Array를 모두 합하여 평균을 내서
값을 구하고,
array "test[20]"중에 0.5범위에 해당하지 않은 수들과 0.5범위에 해당
하여 평균을 구한 결과 값을 다른 array에 저장하는 식이 필요합니다.
(즉 0.5범위에 들어있는 값들을 제외시키고 그 대신 구해진 평균을 처음에 있는
array중 0.5범위에 해당되지 않았던 수들과 함께 새로운 array "test2"에 저장한
다.)---> 20개 값중 0.5p 안에 드는 선들끼리 합쳐서 평균을 내어 복잡함을 없
애 보려는 의도 입니다.
답변 2
예스스탁 예스스탁 답변
2009-07-15 09:49:49
안녕하세요
예스스탁입니다.
1.
var : maxcnt(0),mincnt(0),cnt(0),Uppivot(0),Dnpivot(0),count1(0),count2(0);
Array : Clx[10](0),maxmin[10](0),minmax[10](0);
maxcnt = 0;
mincnt = 0;
for cnt = 0 to 9{
if CLX[cnt] > C Then{
minmax[cnt] = -999999999;
maxmin[cnt] = ClX[cnt];
}
Else
{
maxmin[cnt] = 999999999;
minmax[cnt] = ClX[cnt];
}
}
Uppivot = 999999999;
Dnpivot = -1;
for count1 = 0 to 9{
if maxmin[count1] < Uppivot Then
Uppivot = maxmin[count1];
if minmax[count1] > Dnpivot Then
Dnpivot = minmax[count1];
}
plot1(Uppivot);
plot2(Dnpivot);
2.
내용을 파악하지 못했습니다.
어떤 식으로 식을 작성해야 할지 모르겠습니다.
좀더 자세한 내용을 써주시면 작성가능한지 검토하도록 하겠습니다.
즐거운 하루되세요
> falcon00 님이 쓴 글입니다.
> 제목 : 수식문의 드립니다.
> 항상 친절한 답변 감사드립니다.
두가지 질문을 드립니다.
1. 예를들어 10개의 Array "Clx[10]" 가있습니다.
Clx는 값이 무작위로 저장이 되어있습니다.
Clx 값중에는 현재값보가 큰것들도 있고 작은 것들도 있습니다.
이때 현재값과 Clx값을 비교했을 때 "큰값중 현재값과 가장 가까운 값 Uppivot"과
"작은값중 현재값과 가장 가까운 값 Dnpivot"을 구하여 저장하는 식이 필요합니다.
2. 예를들어 20개의 Array "test[20]" 가있습니다.
여기에 저장되어 있는 값은 무작위로 저장되어있으며 내림차순 또는
오름차순이 아닙니다.
이 값들을 내림차순이나 오름 차순으로 정렬하더라도 값들의 간격은
일정하지 않습니다.
예를들면 test[1]=180, test[2]=183, test[3]=182.5 test[4]= 183.1 ......
이들 값들중 두수 또는 세수, 또는 네수 등 비교하는 대상의 수에 상관없이 간격의
차이가 0.5가 되지 않으면 0.5범위에 들어 있는 Array를 모두 합하여 평균을 내서
값을 구하고,
array "test[20]"중에 0.5범위에 해당하지 않은 수들과 0.5범위에 해당
하여 평균을 구한 결과 값을 다른 array에 저장하는 식이 필요합니다.
(즉 0.5범위에 들어있는 값들을 제외시키고 그 대신 구해진 평균을 처음에 있는
array중 0.5범위에 해당되지 않았던 수들과 함께 새로운 array "test2"에 저장한
다.)---> 20개 값중 0.5p 안에 드는 선들끼리 합쳐서 평균을 내어 복잡함을 없
애 보려는 의도 입니다.
falcon00
2009-07-15 11:21:53
제가 너무 어렵게 설명을 드렸나 봅니다.
두번째 질문의 목적은 지금 저에게 20개의 라인이 나오는 지표가 있는데
이것을 0.5p근접한 선들을 모두 평균을 내어 복잡함을 덜기 위함입니다.
예를들어 20개의 Array "test[20]" 가있습니다.
값은 무작위로 저장되어 있습니다. 쉽게 말해 20개의 선이 있습니다.
array는 다음과 같다고 가정하겠습니다.
test[1]= 180.0
test[2]= 183.0
test[3]= 182.5
test[4]= 183.1
test[5]= 185.1
test[6]= 183.4
test[7]= 183.3
test[8]= 184.6........
위의 예에서 test[4],[6],[7]은 0.5p 안에 들어 있습니다.
그러면 test2라는 새로운 array에 값을 다시 저장하는데(저장 순서는 상관없음)
test2[1]= 180.0->test값을 그대로
test2[2]= 183.0->test값을 그대로
test2[3]= 182.5 ->test값을 그대로
test2[4]= 183.27---->test[4],[6],[7]를 평균한 값.183.27
test2[5]= 185.1->test값을 그대로
test2[6]= 184.6->test값을 그대로........
이 예에서는 test2[4]로 test array의 0.5에 해당하는 가장 빠른 array값 대신 넣는 것으로 가정했으나 새로운 array에 0.5p에 해당하지 않은 test 값들을 먼저 넣고 나중에
추가로 평균한 값이 들어가도 상관은 없습니다.
만약 새로운 array로 저장하는 로직이 불가능 하다면 test array에서 해당하는 값이 모두 평균내어진 값으로 변경되는 로직으로라도 부탁합니다.
그러면 다음과 같이 되겠습니다.
test[1]= 180.0
test[2]= 183.0
test[3]= 182.5
test[4]= 183.27---->test[4],[6],[7]를 평균한 값.183.27로 변경됨.
test[5]= 185.1
test[6]= 183.27---->test[4],[6],[7]를 평균한 값.183.27로 변경됨.
test[7]= 183.27---->test[4],[6],[7]를 평균한 값.183.27로 변경됨.
test[8]= 184.6........
*******추가질문 메일드렸습니다. 자세한답변 감사드리며 다시 한번 부탁드립니다.