社区
PowerBuilder
帖子详情
如保生成一个固定的随机数
simon__sun
2010-05-13 04:24:12
已知时间 A 固定变化
已知时间 B 固定不变 在B的时间的增随机增加个15分钟以内到时间得到时间C
能否根据时间A 和 时间B 生成固定的时间C
例如: 时间A 18:00 时间B 16:00 得到时间C 16:01~16:15 只要时间A不变时间C就是个固定值
...全文
92
9
打赏
收藏
如保生成一个固定的随机数
已知时间 A 固定变化 已知时间 B 固定不变 在B的时间的增随机增加个15分钟以内到时间得到时间C 能否根据时间A 和 时间B 生成固定的时间C 例如: 时间A 18:00 时间B 16:00 得到时间C 16:01~16:15 只要时间A不变时间C就是个固定值
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
永生天地
2010-05-13
打赏
举报
回复
真的是看不懂,有固定还随即
zlf19810306
2010-05-13
打赏
举报
回复
按楼主说的,偶的理解是这样的:
B是个固定的
A通过某种算法的到 D,D的范围是1秒~900秒。
A的值与D的值是一一对应的,B + D = C
也就是做一个1秒~86399秒,到1秒~900秒的映射。
而楼主说A是固定变化的,不知道是怎么变化。
kenshu
2010-05-13
打赏
举报
回复
上面说的,
"根据某一个算法,如yyyy+mm+dd+hh+mm+ss (比如这几个值各乘一个权值) 由A得到上面的n"
一般是,伪码
datatime A
datetime kkk = 1980-01-01 00:00:00 //这是一个固定的值,也可以是2000-01-01
long ll_seconds_after
a = ......
ll_seconds_after = kkk - a
n = mod(ll_seconds_after,32767) + 1
但事实上,直接从ll_seconds_after取模/*mod(ll_seconds_after,900) + 1*/ + B 就可以了,用不用RAND实际上一样,只不过你看起来好像一个“随机”一点,另一个"不随机"一点,但实际上RAND这个函数,它不是真的随机的。
kenshu
2010-05-13
打赏
举报
回复
留意,上面的随机种子,N不能为0.N=0时,以系统时间为随机种子.
同时,按这个方法,最多只有32767个值//不过你要求在900个值以内,可以满足.
kenshu
2010-05-13
打赏
举报
回复
//Randomize ( n )
N固定,rand出来的值的序列固定。
根据某一个算法,如yyyy+mm+dd+hh+mm+ss (比如这几个值各乘一个权值) 由A得到上面的n
long i
Randomize ( n )
i = rand(60 * 15) - 1
I就是你随机要加的秒数.
酒尽雪满天
2010-05-13
打赏
举报
回复
看的我迷茫。
应该可以实现,让我想想。
xlq_link
2010-05-13
打赏
举报
回复
LZ可能描述得还不够精确~~
gui41021
2010-05-13
打赏
举报
回复
A变时 C要变么?
貌似C = B + 15 跟A没关系啊
new4everlau
2010-05-13
打赏
举报
回复
这个问题比较怪:看来不记录这个变化数值是不行了;
如果有2条记录,A,B数值都一样,是不是C也一样啊?
如果一样那么A需要有个和【1,15】的对照表了,随机是随不出来了;
PowerBuilder
1,108
社区成员
66,453
社区内容
发帖
与我相关
我的任务
PowerBuilder
PowerBuilder 相关问题讨论
复制链接
扫一扫
分享
社区描述
PowerBuilder 相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章