Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

SCHOOL COURSE SELECTION JAVA APP PLEASE CODE IN JAVA Introduction As you already know, students in high school are required to select courses that they

SCHOOL COURSE SELECTION JAVA APP

PLEASE CODE IN JAVA

Introduction

As you already know, students in high school are required to select courses that they wish to take in the following year. Often students have to select alternatives as there is no guarantee that there will be enough room in classes for all students to be enrolled in their top choices of courses. Classes also have various size restrictions which make it difficult to organize the school year.

The Task

You will be developing software that is capable of taking a list of students and assigning them to courses. Each student will have 6 course selections and are to be assigned to exactly 4 courses. The course selections are listed in order of importance (the last 2 are alternates). A file called students.txt contains a list of students (one per line). Each Line looks like the following example:

Lisa Simpson 341702323 SNC1D1 ICS3U6 MAT1D1 ENG1P1 ICD2O1 TEJ2O1

A file called courses.txt contains a list of all the courses and the class size maximums. It looks like the following example:

SNC1D1 20 ICS3U6 15 MAT1D1 32 ENG1P1 6 ICD2O1 22 TEJ2O1 22

Finally, a file called staff.txt contains a list of staff at the school. The first line is the principal and additional lines are teachers. Each teacher has a list of courses that they teach. This is similar to the following example:

Sheahan Martin ICS4U1 Gissing SNC1D1 MAT1D1 John ENG1P1 Stretton TEJ2O1

The Details

Your program will read all the files and then output the results of scheduling students into classrooms into a file called schedule.txt. The output should be similar to the following example:

PRINCIPAL Sheahan

---------- COURSE ICS4U1

TEACHER Martin

STUDENTS Arty Mcfly Bart Simpson George Bobski Zander Alecks

----------- COURSE SNC1D1

TEACHER Gissing

STUDENTS Bart Simpson Geoprge Bobski Marky Mark

..etc..

Testing Process

Your program will be run against a variety of test cases that increase in difficulty. The most difficult test case will test some optimizing of students into courses. All of the tests cases will be selected to work with simple pigeon-hole type algorithms. (None of the test cases will have only 1 solution to the scheduling problem.

Object Oriented Design

Great deals of emphasis (and marks) are related to the overall design of your program. You should review all the OOP concepts and make sure that they have been applied to your design where appropriate.

students.txt:

Harvey Dent 12034567 ABC123 BAT2O1 MAT1P1 SNC1D1 PHR2O1 ZAT1D1 Bruce Ward 34156710 ABC123 BAT2O1 MAT1P1 SNC1D1 PHR2O1 ZAT1D1

staff.txt:

Sheahan Davidson BAT2O1 MAT1P1 SNC1D1 Marving ZAT1D1 ABC123 Simpson PHR2O1

courses.txt:

ABC123 5 BAT2O1 5 MAT1P1 5 SNC1D1 5 PHR2O1 5 ZAT1D1 5

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Oracle RMAN For Absolute Beginners

Authors: Darl Kuhn

1st Edition

1484207637, 9781484207635

More Books

Students also viewed these Databases questions

Question

How much sales tax did Dillards pay in South Carolina (SC)?

Answered: 1 week ago