请部怎样在一段时间中得到一个随机时间.
如2005年7月7日10:00到2005年7月7日11:00
随机得到一个时间,可以是它们中间的任意一个数(如2005年7月7日10:11或2005年7月7日10:30等)
delphi中怎样连接VF数据库(我从来没有用过VF)分数少了还可以加
如2005年7月7日10:00到2005年7月7日11:00
随机得到一个时间,可以是它们中间的任意一个数(如2005年7月7日10:11或2005年7月7日10:30等)
delphi中怎样连接VF数据库(我从来没有用过VF)分数少了还可以加
var
vStartTime, vEndTime: TTime;
T: Real;
R: Real;
begin
Randomize;
vStartTime := StrToTime('2005-07-06 10:00:00');
vEndTime := StrToTime('2005-07-07 11:00:00');
T := vEndTime - vStartTime;
R := Random;
while R > T do R := R - T;
Caption := TimeToStr(vStartTime + R);
end;你可以试验一下行不行?
ODBC提供了连接字符串的
具体见
http://blog.csdn.net/foxmail/archive/2004/06/25/26362.aspx
Caption := TimeToStr(vStartTime + R);
-------
你这样的算法好像不够随机,
而且r都是在0跟1之间,
如果要求有跨天的,比如2005.7.7 10:00-2005.7.10 10:00
这样就没办法得到2005.7.8 10:00之后的时间。
改成百分比比较好吧。
T := vEndTime - vStartTime;
R := Random;
T:=T*R;
Caption := TimeToStr(vStartTime + T);
同一般连接VF一样
大伟的思路就是对的,取随机数的地方或者你再改进一下