1、手工求解的模型是:先按 性别+是否住校+成绩 排序,按照 “S”型分班
如:男住校生的新分班级依次为2、10、10、2、2、10、10、2..........
女住校生的新分班级依次为2、10、10、2、2、10、10、2..........
男非住校生的新分班级依次为2、10、10、2、2、10、10、2..........
女非住校生的新分班级依次为2、10、10、2、2、10、10、2..........
这样分的班基本能达到2个班男女人数、住校生非住校生人数、平均成绩均衡。
但这种分法不能保证2个班的平均成绩差距在1分以内。
2、据说可以通过交换两个班的学生来使2个班的平均成绩控制在1分以内:
假设按以上方法分班完成后,2班的平均成绩为av2;10班的平均成绩为av10; 2个班的总平均成绩为av
av10>av2
调整方法:
(1)、在10班随机找一个成绩大于av的学生,将新分班级改为2,然后再在2班找一个性别、是否住校与刚才变动的学生相同,平均成绩小于av的学生,新分班级改为10。
(2)、判断2个班平均成绩是否差距在1分以内,如果是调整成功,否则继续(1)
算法是这样的,请各位大侠写一下VFP代码。
如:男住校生的新分班级依次为2、10、10、2、2、10、10、2..........
女住校生的新分班级依次为2、10、10、2、2、10、10、2..........
男非住校生的新分班级依次为2、10、10、2、2、10、10、2..........
女非住校生的新分班级依次为2、10、10、2、2、10、10、2..........
这样分的班基本能达到2个班男女人数、住校生非住校生人数、平均成绩均衡。
但这种分法不能保证2个班的平均成绩差距在1分以内。
2、据说可以通过交换两个班的学生来使2个班的平均成绩控制在1分以内:
假设按以上方法分班完成后,2班的平均成绩为av2;10班的平均成绩为av10; 2个班的总平均成绩为av
av10>av2
调整方法:
(1)、在10班随机找一个成绩大于av的学生,将新分班级改为2,然后再在2班找一个性别、是否住校与刚才变动的学生相同,平均成绩小于av的学生,新分班级改为10。
(2)、判断2个班平均成绩是否差距在1分以内,如果是调整成功,否则继续(1)
算法是这样的,请各位大侠写一下VFP代码。