以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  请问如何查找某数组中是否存在指定值  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=166164)

--  作者:leonxu
--  发布时间:2018/10/27 18:58:12
--  请问如何查找某数组中是否存在指定值

设数组

VARIABLE:X[7]=0;

 X[1]:=3;
 X[2]:=5;
 X[3]:=6;
 X[4]:=8;
 X[5]:=2;
 X[6]:=4;
 X[7]:=10;

 

想查询11是否存在于数据中,是否有相应函数,或有什么简便的写法,


--  作者:wenarm
--  发布时间:2018/10/29 8:49:31
--  

只能通过for循环逐个元素进行判断。没有简便的方式。

 


--  作者:FireScript
--  发布时间:2018/10/29 9:04:29
--  
 
 首先这个没有可以直接调用的函数可以判断。
可能只能利用循环去判断了。


--  作者:leonxu
--  发布时间:2018/11/3 23:39:35
--  

请写个举个例子,另外数据定义后,里面的各数是全局变量还是一次性的变量?例如

 

VARIABLE:PC[5]=0; 然后在后面的计算过程中给里面的PC[1]-PC[5]分别赋了值,程序执行一次后,下一周期再执行,到了VARIABLE:PC[5]=0这句后,里面的PC[1]-PC[5]是0还是上一轮计算中,后面的的赋值,另外,能用一数组的值去给别一数组赋值吗?

 

VARIABLE:P[3]=0;

 

p[1]:=PC[1];

p[2]:=PC[3];

p[3]:=PC[5];

 

这样写成立吗?


--  作者:wenarm
--  发布时间:2018/11/5 9:19:32
--  

for i=1 to 7 do BEGIN
  if x[i]= 5 then begin
     aa:=1; //代表成立,查找的是5
  end 
end

 

赋值后的结果。数组赋值只能逐个元素赋值。


--  作者:FireScript
--  发布时间:2018/11/5 9:24:37
--  
 数值里面的值只初始化一次,后续只有你有重新赋值的语句才会改变它的值。
--  作者:leonxu
--  发布时间:2018/11/5 11:00:48
--  

就是p[1],p[2]这些都是全局变量?


--  作者:FireScript
--  发布时间:2018/11/5 11:06:14
--  
 是的。你不做赋值操作,只会保存初始化时候的值。
--  作者:leonxu
--  发布时间:2018/11/6 17:52:12
--  

但我看论坛里其它贴的回答说是一次性的变量,再执行,就会变0,所以确认一下


--  作者:leonxu
--  发布时间:2018/11/6 17:52:27
--  
另外,能用一数组的值去给别一数组赋值吗?

 

VARIABLE:P[3]=0;

 

p[1]:=PC[1];

p[2]:=PC[3];

p[3]:=PC[5];

 

这样写成立吗?