J
jiangopen
Unregistered / Unconfirmed
GUEST, unregistred user!
在dataset中有个double类型的字段uservalue。我打算写一个函数判断连续N个结果有M个数据超过他们的平均数X。现在平均数好办是已知的。 我把数据集装入到了数组里面。
var a:array of double;
begin
with dataset do
begin
first;
setlength(a,recordcount);
for i:=low(a) to high(a) do
begin
a:=fieldbyname('uservalue').asfloat;
next;
end
end;
end;
现在就把数据都装入了数组a 中
如果判断连续N个结果同时超过X就好办:
var i,k:integer;
begin
k:=0;
for i:=low(a) to high(a) do
begin
if (a>X) then
k:=k+1
else
k:=0;
end;
if k=N then showmessage('发现!');
end;
现在的问题是连续N个结果有M个超过X。这M个结果在N个结果中可以不是连续的,但是N个结果又是连续的。
我想了半天都没有写出合适的解决方法来。希望哪位热心人帮我一下,谢谢!
var a:array of double;
begin
with dataset do
begin
first;
setlength(a,recordcount);
for i:=low(a) to high(a) do
begin
a:=fieldbyname('uservalue').asfloat;
next;
end
end;
end;
现在就把数据都装入了数组a 中
如果判断连续N个结果同时超过X就好办:
var i,k:integer;
begin
k:=0;
for i:=low(a) to high(a) do
begin
if (a>X) then
k:=k+1
else
k:=0;
end;
if k=N then showmessage('发现!');
end;
现在的问题是连续N个结果有M个超过X。这M个结果在N个结果中可以不是连续的,但是N个结果又是连续的。
我想了半天都没有写出合适的解决方法来。希望哪位热心人帮我一下,谢谢!