以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  我想让FOXTABLE把人数自动合成20人为一个考场,有什么方法没?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=69158)

--  作者:zgjmost
--  发布时间:2015/5/31 21:28:00
--  我想让FOXTABLE把人数自动合成20人为一个考场,有什么方法没?

我想让FOXTABLE把人数自动合成20人为一个考场,有什么方法没?

 

例如在6月3日,08:00开始的这一段,考不同课程人数有8人,7人,3人,5人,2人,11人

 

FOXTABLE可以自动的把8人,7人,3人,2人编为一个考场,在教室中自动写入教室301,

 

而5人,11人编到另外一个考场,在教室中自动写入教室301

 

当然这只举出了同一时间段的两个考场。还可能会出现三个考场,不知哪位高手可以提供一下思路或代码?

 

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20150531212138.png
图片点击可在新窗口打开查看

--  作者:yinyb36
--  发布时间:2015/5/31 22:36:00
--  

例如在6月3日,08:00开始的这一段,考不同课程人数有8人,7人,3人,5人,2人,11人

 

FOXTABLE可以自动的把8人,7人,3人,2人编为一个考场,在教室中自动写入教室301,

 

而5人,11人编到另外一个考场,在教室中自动写入教室301

 

8人,7人,5人编为一个考场,在教室中自动写入教室301,

 而3人,2人,11人编到另外一个考场,也没问题呀



--  作者:大红袍
--  发布时间:2015/5/31 22:52:00
--  

1、思路,先得到一个分组统计表,统计日期时间、科目、人数;然后,处理的你算法,实际上,你的就是背包问题;每凑够一个20,就修改考场的名字。

 

2、上传具体例子啊。


--  作者:zgjmost
--  发布时间:2015/6/1 0:06:00
--  

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:排考室应用篇.zip

 

 

就用程总的这个例子

 

把下图中考室我要用系统自动安排,以20人为一个单位进行考室安排,同一日期同一起始时间,先如果达到20用201教室,然后再考察剩下的,如果剩下的又达到20用301,至到最后一个或两个不能达到20人,放在401,和501

 


 


图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看

--  作者:大红袍
--  发布时间:2015/6/1 12:55:00
--  

 组合排列,数据量越大,运行的时间越久

 

      

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:crks.rar


--  作者:zgjmost
--  发布时间:2015/6/15 20:52:00
--  
Dim pcount As Integer = 20
vars("aidx") = 201
Dim dt As DataTable = DataTables("ksap")
dt.StopRedraw
Dim rqsjs As List(Of String()) = dt.GetValues("rq|sj")
For Each rqsj() As String In rqsjs
    Dim filter As String = "rq = #" & rqsj(0) & "# and sj = \'" & rqsj(1) & "\'"
    Dim drs As List(Of DataRow) = dt.Select(filter, "rs desc")
    Dim Ispick As new List(of Integer)
    Dim b(drs.Count-1) As Integer
    For i As Integer = 1 To drs.Count
        If i <= drs.Count - IsPick.Count Then
            \'output.show(i & " " & drs.Count & " " & IsPick.count)
            Functions.Execute("组合排列", drs, b.length, i, b, i, pcount, IsPick)
        End If
    Next
Next
dt.ResumeRedraw
msgbox("操作完毕")

--  作者:zgjmost
--  发布时间:2015/6/15 20:54:00
--  

大红袍老师:能不能帮我注释一下上面第一句是什么意思啊?

 

还有一问题,执行完后有的考试是空的,怎么解决?

 

 

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20150615205317.png
图片点击可在新窗口打开查看

 

他的这个教室是怎样命名的?


--  作者:大红袍
--  发布时间:2015/6/15 21:16:00
--  

http://foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=70092&skin=0