如何用好这个随机函数

xilaianzxsc 2012-02-01 10:57:05
repl all 字段 with 数字1,2,3,4的组合,但不重复

如:可以组合成 1234,1243,1324,1342,1432,2431等,共能组合成24种

不知此随机函数如何写?




...全文
95 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
xilaianzxsc 2012-02-01
  • 打赏
  • 举报
回复
1234,此四个数字,顺序打乱,进行组合,可以有24种组合的,分别如下

如 1234 1243
1342 1324
1423 1432
2134 2143
2341 2314
2413 2431
3124 3142
3241 3214
3412 3421
4132 4123
4231 4213
4312 4321

repl all 字段 with 上述组合中的随机一个.
xilaianzxsc 2012-02-01
  • 打赏
  • 举报
回复
可能我没有说清,我要重新解释一下:

1234,1243,1324,1342,1432,2431等,共能组合成24种


repl all 字段 with 上述组合中的随机一个.
十豆三 2012-02-01
  • 打赏
  • 举报
回复
这不是随机数,这是全排列。
xilaianzxsc 2012-02-01
  • 打赏
  • 举报
回复
关键的就在这儿:

取 1 2 3 4之间任何一个数的随机函数.

Transform(Int(4*Rand()+1))
xilaianzxsc 2012-02-01
  • 打赏
  • 举报
回复
谢谢老师
十豆三 2012-02-01
  • 打赏
  • 举报
回复
Rand(-1) && 这个在程序启动时运行一次即可。

如果字段是字符型
Replace All 字段 With Transform(Int(4*Rand()+1))+Transform(Int(4*Rand()+1))+Transform(Int(4*Rand()+1))+Transform(Int(4*Rand()+1))

如果字段是数值型
Replace All 字段 With VAL(Transform(Int(4*Rand()+1))+Transform(Int(4*Rand()+1))+Transform(Int(4*Rand()+1))+Transform(Int(4*Rand()+1)))

lmj9401 2012-02-01
  • 打赏
  • 举报
回复
存储下列数据到数组a(24)中。
1234 1243
1342 1324
1423 1432
2134 2143
2341 2314
2413 2431
3124 3142
3241 3214
3412 3421
4132 4123
4231 4213
4312 4321

然后用a(int(rand()*24)+1)调用访问即可。
xilaianzxsc 2012-02-01
  • 打赏
  • 举报
回复
再换个说法吧:

aaa=1234四个数字中的随机一个

bbb=余下来的3个数字中,再随机选一下

ccc=余下来的2个数字中,再随机选一下

ddd=最后余下的一个数字

repl all 字段 with aaa+bbb+ccc+ddd

2,749

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧