Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9abd43e241 | ||
|
|
f3b3c42688 | ||
|
|
8ddc581f61 | ||
|
|
8e69c031e1 | ||
|
|
ca498f1f28 |
@@ -10,7 +10,7 @@ public class Course {
|
|||||||
this.courseCode = courseCode;
|
this.courseCode = courseCode;
|
||||||
this.capacity = capacity;
|
this.capacity = capacity;
|
||||||
}
|
}
|
||||||
|
// test
|
||||||
public String getCourseName() {
|
public String getCourseName() {
|
||||||
return courseName;
|
return courseName;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,13 @@
|
|||||||
package CourseRegistrationStarter;
|
package CourseRegistrationStarter;
|
||||||
|
import java.lang.reflect.Field ;
|
||||||
|
|
||||||
|
import java.lang.reflect.Field;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Scanner;
|
||||||
|
|
||||||
public class Main {
|
public class Main {
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) throws NoSuchFieldException {
|
||||||
// TODO:
|
// TODO:
|
||||||
// 1. Create at least 3 courses
|
// 1. Create at least 3 courses
|
||||||
// 2. Create 1 student
|
// 2. Create 1 student
|
||||||
@@ -10,5 +16,77 @@ public class Main {
|
|||||||
// 5. Register the student in some courses
|
// 5. Register the student in some courses
|
||||||
// 6. Drop one course
|
// 6. Drop one course
|
||||||
// 7. Print the final registered course list
|
// 7. Print the final registered course list
|
||||||
|
RegistrationSystem reg = new RegistrationSystem() ;
|
||||||
|
Course AP = new Course("ap" , "1404" , 2 );
|
||||||
|
reg.addCourseToSystem(AP) ;
|
||||||
|
Course DS = new Course("DS" , "2201" , 1 );
|
||||||
|
reg.addCourseToSystem(DS);
|
||||||
|
Course DB = new Course("Db" , "3301" , 3 );
|
||||||
|
reg.addCourseToSystem(DB);
|
||||||
|
Map<String, Course> courseMap = new HashMap<>();
|
||||||
|
courseMap.put("AP", AP);
|
||||||
|
courseMap.put("DS", DS);
|
||||||
|
courseMap.put("DB", DB);
|
||||||
|
Student Ali = new Student("ali" , "402222001") ;
|
||||||
|
|
||||||
|
//test
|
||||||
|
Scanner input = new Scanner(System.in) ;
|
||||||
|
|
||||||
|
int x = 0 ;
|
||||||
|
while (x != 6 ) {
|
||||||
|
System.out.println("menu");
|
||||||
|
System.out.println("1) Add course ");
|
||||||
|
System.out.println("2) drop course ");
|
||||||
|
System.out.println("3) show registered courses");
|
||||||
|
System.out.println("4 ) show all courses");
|
||||||
|
System.out.println("5) Show capacities ");
|
||||||
|
System.out.println("6) exit ");
|
||||||
|
System.out.println("enter your choice ");
|
||||||
|
x = input.nextInt() ;
|
||||||
|
input.nextLine() ;
|
||||||
|
if (x == 1 )
|
||||||
|
{
|
||||||
|
System.out.println("Available courses: AP - DS - DB");
|
||||||
|
String y = input.nextLine().trim();
|
||||||
|
Course selected = courseMap.get(y.toUpperCase());
|
||||||
|
if (selected != null) {
|
||||||
|
Ali.addCourse(selected);
|
||||||
|
} else {
|
||||||
|
System.out.println("No");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (x == 2 ) {
|
||||||
|
System.out.println("courses names : AP - DS - DB");
|
||||||
|
String y = input.nextLine().trim();
|
||||||
|
Course selected = courseMap.get(y.toUpperCase());
|
||||||
|
if (selected != null) {
|
||||||
|
Ali.dropCourse(selected);
|
||||||
|
} else {
|
||||||
|
System.out.println("No");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
else if (x == 3 ) {
|
||||||
|
Ali.showRegisteredCourses();
|
||||||
|
|
||||||
|
}
|
||||||
|
else if (x == 4 )
|
||||||
|
{
|
||||||
|
reg.showAllCourses();
|
||||||
|
} else if (x == 5 ) {
|
||||||
|
reg.showcapacity();
|
||||||
|
|
||||||
|
} else if (x == 6) {
|
||||||
|
continue;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package CourseRegistrationStarter;
|
package CourseRegistrationStarter;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
public class RegistrationSystem {
|
public class RegistrationSystem {
|
||||||
private ArrayList<Course> courses;
|
private ArrayList<Course> courses;
|
||||||
@@ -10,15 +11,63 @@ public class RegistrationSystem {
|
|||||||
|
|
||||||
public void addCourseToSystem(Course c) {
|
public void addCourseToSystem(Course c) {
|
||||||
// TODO: Add the course to the system
|
// TODO: Add the course to the system
|
||||||
|
if (courses.contains(c)) {
|
||||||
|
System.out.println("you cant add this course !!");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
courses.add(c);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
// test
|
||||||
|
|
||||||
|
|
||||||
public Course findCourseByCode(String code) {
|
public Course findCourseByCode(String code) {
|
||||||
// TODO: Search for a course by course code
|
// TODO: Search for a course by course code
|
||||||
// Return the matching course if found, otherwise return null
|
// Return the matching course if found, otherwise return null
|
||||||
|
for (Course item : courses)
|
||||||
|
{
|
||||||
|
if (Objects.equals(item.getCourseCode(), code)) {
|
||||||
|
|
||||||
|
return item ;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
|
||||||
|
}
|
||||||
|
public Course findCourseByName(String name)
|
||||||
|
{
|
||||||
|
for (Course item : courses)
|
||||||
|
{
|
||||||
|
if (Objects.equals(item.getCourseCode(), name)) {
|
||||||
|
|
||||||
|
return item ;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void showAllCourses() {
|
public void showAllCourses() {
|
||||||
// TODO: Print all courses in the system
|
// TODO: Print all courses in the system
|
||||||
|
for (Course item : courses)
|
||||||
|
{
|
||||||
|
System.out.print("course name : ");
|
||||||
|
System.out.print(item.getCourseName());
|
||||||
|
System.out.print(" , course code");
|
||||||
|
System.out.print(item.getCourseCode());
|
||||||
|
System.out.print(" , course capacity");
|
||||||
|
System.out.print(item.getCapacity());
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public void showcapacity(){
|
||||||
|
for (Course item : courses)
|
||||||
|
{
|
||||||
|
|
||||||
|
System.out.println(item.getCapacity());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,17 +23,47 @@ public class Student {
|
|||||||
public boolean addCourse(Course c) {
|
public boolean addCourse(Course c) {
|
||||||
// TODO: Register the student in the course if capacity allows
|
// TODO: Register the student in the course if capacity allows
|
||||||
// Return true if registration was successful, otherwise false
|
// Return true if registration was successful, otherwise false
|
||||||
return false;
|
if (registeredCourses.size()<= 10) {
|
||||||
|
if (c.reduceCapacity()) {
|
||||||
|
registeredCourses.add(c);
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return false ;
|
||||||
|
// test
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean dropCourse(Course c) {
|
public boolean dropCourse(Course c) {
|
||||||
// TODO: Remove the course from the student's list
|
// TODO: Remove the course from the student's list
|
||||||
// Restore the course capacity if removal was successful
|
// Restore the course capacity if removal was successful
|
||||||
// Return true if the course was dropped, otherwise false
|
// Return true if the course was dropped, otherwise false
|
||||||
return false;
|
int ind = registeredCourses.indexOf(c) ;
|
||||||
|
if (ind != -1 )
|
||||||
|
{
|
||||||
|
registeredCourses.remove(ind) ;
|
||||||
|
c.increaseCapacity();
|
||||||
|
return true ;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void showRegisteredCourses() {
|
public void showRegisteredCourses() {
|
||||||
// TODO: Print all registered courses
|
// TODO: Print all registered courses
|
||||||
|
for (Course item : registeredCourses)
|
||||||
|
{
|
||||||
|
System.out.print("course name : ");
|
||||||
|
System.out.print(item.getCourseName());
|
||||||
|
System.out.print(" , course code");
|
||||||
|
System.out.print(item.getCourseCode());
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user