以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  [讨论][求助]关于数组的循环  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=12297)

--  作者:htrzjt
--  发布时间:2012/6/8 10:02:14
--  [讨论][求助]关于数组的循环
 A:DATACOUNT,NODRAW;
VARIABLE:X[A]=0,S[A]=0;

IF 1 THEN

BEGIN
    FOR N=1 TO DATACOUNT DO
    IF  A1  THEN
    BEGIN
        X[N]=X[N+1];   // 这个是第10行
        S[N]=S[N+1];
    END;  
END;

上面的代码检测是通过的,不知道哪里出错了。应用于图后提示第10行,错误:数组越界操作。 不知道哪位高手帮忙看看。
我想要实现的过程是:
从第一根K线开始检测,不管A1和A2成不成立,每检测一次,N增加1,(这个我好像没实现)
如果A1成立就把第N根K线的X值和S值分别换成第N+1根X和S的值。

然后要在每次循环的执行时输出数组 X 和S; //这句我发现写在循环语句中也是出错的,不知道怎么写。

期待高手大侠的出现,本人新手。对帮助我的人不胜感激。




--  作者:jinzhe
--  发布时间:2012/6/8 10:29:07
--  
A:datacount,NODRAW;
variable:x=0,s=0;
    FOR N=1 TO barpos DO
    if a1 then
  
    BEGIN
     
        X[N+1]:=x[n]; 
        S[N+1]:=s[n];
    END
 
    xx:x;
    ss:s;