学校教务的管理作为高校教育信息化工作中的一项重要工作,如何构建一个具有开放性、实用性和灵活性的平台,是一个值得探讨的课题。其中,作为学校教务重点环节之一的排课系统也尤为重要。以前,在统筹安排各班级上课的时间需要人工实现,而且还经常会出现同时有多个班级要使用教室的冲突。 既耗时又耗精力, 随着计算机技术的不断发展,计算机技术在各领域的充分完美应用,以学校的教务管理为该系统的应用背景,开发一个智能排课系统。
(本系统仅为课程设计,代码全部原创,算法思路较为常规,适合需要了解排课系统的实现与参考实现思路或应付课程设计的同学,资深大神请ctrl+F4)
排课问题实质上是时间、教师、班级、教室、课程这五维关系的冲突问题。
基本要求:
1) 同一班级的学生在同一时间不能安排两门课程
2) 同一教师在同一时间不能安排两门课程
3) 同一教室在同一时间不能安排两门课程
4) 同一时间安排的课程总数不能大于所能提供的教室总数
5) 某一课程参加学习的总人数不应大于所安排教室的座位数
6) 所提供教室的属性与课程所需教室的属性一致
需求:
录入班级课程信息,教师任课信息,输出每个班级课表,每个教师课表;
先做系统演示:
输出每个班级课表:
当然同时也写入文件: