以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 随机数问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=191028) |
-- 作者:lin98 -- 发布时间:2024/3/22 12:52:00 -- 随机数问题 需求:将已数据,生成记录,星期六,星期天不生成数据,生成随机数=总数? 也就是如何实现将表A生成表B? 表A 编号 总数 系数 开始日期 D01 1000 3 2024-3-11 D02 2000 2 2024-3-15 注:2024-3-16,2024-3-17是星期六,星期天,不生数据。 需求结果显示: 表B 编号 总数 系数 开始日期 随机数 D01 1000 3 2024-3-11 330 D01 1000 3 2024-3-12 337 D01 1000 3 2024-3-13 333 D02 2000 2 2024-3-15 1020 D02 2000 2 2024-3-18 980 [此贴子已经被作者于2024/3/22 12:58:59编辑过]
|
-- 作者:cd_tdh -- 发布时间:2024/3/22 13:23:00 -- 如果是3个数生成随机数,排除0和500,那么有两个随机数是1-499,剩余的随机数就用总数减去前面连个随机数 Dim Val1 As Integer = Rand.Next(1, 499) \'生成1到499之间的随机整数 Dim Val2 As Integer = Rand.Next(1, 499) \'生成1到499之间的随机整数 Dim Val3 As Integer = 100 - Val1 - Val2 Output.show(Val1) Output.show(Val2) Output.show(Val3)
[此贴子已经被作者于2024/3/22 13:24:01编辑过]
|
-- 作者:lin98 -- 发布时间:2024/3/22 13:35:00 -- 可能我表达不清 表B是根据表A的数据生成, 需求:如何将“A的数据,星期六,星期天,不生数据,生成表B的数据?
|
-- 作者:有点蓝 -- 发布时间:2024/3/22 13:44:00 -- dim nr as row for each r as row in tables("a").rowsdim xs as integer = r("系数") dim d as date = r("开始日期") dim zs as integer = r("总数") do while xs > 0 nr = tables("b").addnew if d.DayOfWeek=6 then d = d.adddays(2) if d.DayOfWeek=0 then d = d.adddays(1) nr("编号")=r("编号") nr("开始日期")=dif xs = 1 nr("随机数") = zs else
nr("随机数")=Rand.Next(1, zs) zs = zs - nr("随机数") end if loop [此贴子已经被作者于2024/3/22 14:21:43编辑过]
|
-- 作者:cd_tdh -- 发布时间:2024/3/22 14:10:00 -- zs = zs - nr("随机数") end if Loop next 我测试结果不对
|
-- 作者:lin98 -- 发布时间:2024/3/22 15:12:00 -- .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2022.8.18.1 错误所在事件:窗口,生成随机数,Button1,Click 详细错误信息: “minValue”不能大于 maxValue。 参数名: minValue
|
-- 作者:有点蓝 -- 发布时间:2024/3/22 15:33:00 -- …… zs = zs - nr("随机数") end if xs = xs - 1 loop |