每次考试都要打乱顺序随机编排考场,一个考场30人
每次考试都要打乱顺序随机编排考场,一个考场30人,座号从01到30,怎么排啊请教了
按年级班(每个班的编号不允许缺号)统一编号(BH),然后MOD(BH,考场数),余数相同的一个考场。相同余数的重新编号。
[ 本帖最后由 sdta 于 2012-2-28 00:20 编辑 ]
程序代码:********************************************
* 全县毕业考试场编排
* 随机编排毕业考证号、试场、座位号
* 翁建林 完成时间2007年4月11日星期三13:29
********************************************
CLOSE DATABASES
SET SAFETY off
SET engi 70
SELECT 0
USE bybmk
IF !EMPTY(sjs)
MESSAGEBOX('试场号已生成,不能重排!!!',64,'提示')
RETURN
ENDIF
REPLACE sjs with allt(str(val(subs(time(),7))*rand()*123456789)) all
INDEX ON school+sjs to ls
SET ORDER TO ls
GO top
nZKZH=VAL('11001')
DO WHILE !EOF()
czwh=101
cxxdm=school
DO WHILE !EOF().AND.czwh<=130 .and. school=cxxdm
REPL sch WITH SUBSTR(allt(STR(nZKZH)),2)
repl zwh with subs(allt(str(czwh)),2)
czwh=czwh+1
SKIP +1
ENDDO
nZKZH=nZKZH+1
ENDDO
go top
nZKZH=VAL('1100001')
DO WHILE !EOF()
REPL bykh WITH SUBSTR(allt(STR(nZKZH)),2)
SKIP +1
nZKZH=nZKZH+1
ENDDO

