mbekmyrz / scheduling

School Timetable Generation Program.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

**README**

1. How to write Input Files:
	
	1.1 Courses: 
		
		1.1.1 Style: Type,Title,Instructor,Group1,Group2, 		
		  	
			     e.g. Lec Engineering Mechanics,Anatoli Vakhguelt,EY1_T1,EY1_T2,EY1_T3,EY1_T4,EY1_T5,
		
		1.1.2 Rules: -each part should be entered through comma (",")
			     
			     -allowed types: "Lec" for lectures, "Tut" for tutorials, "Lab" for laboratories
			     
			     -only groups that attend this type of course should be entered (i.e. for courses, like lectures and some tutorials - write all groups that attend this course at one time)
 
			     -for the same, but separately running courses (such as labs and some tutorials) - write each course with its group as new one
			      
			      e.g. Lab Machine Dynamics II,Didier Talamona,MEY3_L1,
				   
			           Lab Machine Dynamics II,Didier Talamona,MEY3_L2,
				   
				   Lab Machine Dynamics II,Didier Talamona,MEY3_L3, 			  
		  	     
		             -every line should end with comma (",")
	
	1.2 Rooms: 
		
		1.2.1 Style: Type,Name,Capacity		
		  	
			     e.g. Lab.6.427,40
		
		1.2.2 Rules: -each part should be entered through comma (",")
			     
			     -for lab rooms prefix "Lab." Should be included at the beginning of the name
			     
			     -for other rooms names (if it has two words, Orange hall) should be entered through dot "." (e.g. Orange.hall)
			     
			     -every line should end with comma (",")
	
	1.3 Groups: 
		
		1.3.1 Style: Name,Capacity		
		  	
			     e.g. EY1_T1,48
		
		1.3.2 Rules: -each part should be entered through comma (",")
		 	     
			     -every line should end with comma (",")
	
	1.4 Instructors: 
		
		1.4.1 Style: Name,		
		  	
			     e.g. Ming Yang,
		
		1.4.2 Rules: -each part should be entered through comma (",")
			     
			     -every line should end with comma (",")

2. How to run the code:
	
	2.1 Place your Input Files in the folder "txt" 
	
	2.2 Open the project
	
	2.3 Push run
	
	2.4 In the console write your specific wishes
	
	2.5 Close the project
	
	2.6 Output files are place in the folder "txt"

3. How to read Output Files:
	
	3.1 "Output": Course Title | Days | Time | Capacity | Faculty | Room | Student Groups
	              
			in column Course Title: the name of each course
		      
			in column Days: the day when course is hold (M - Monday, T - Tuesday, W - Wednesday, R - Thursday, F - Friday)
	              
			in column Time: time duration when course is hold	
	              
			in column Faculty: the name of instructor teaching a course
		      
			in column Student Groups: the list of student groups that attend this course
	
	3.2 "UserOutput": it is the file containing the timetable generated by user wishes 
			  reading style is the same as "Output" file containing timetable of all courses

About

School Timetable Generation Program.


Languages

Language:C++ 100.0%