Skip to content

Commit

Permalink
Merge pull request #2 from LuisaFuentesL/PF2-(Add)DiagramUML
Browse files Browse the repository at this point in the history
Implementación Interface y diagrama UML
  • Loading branch information
LuisaFuentesL authored Feb 15, 2024
2 parents 3621974 + 2bcdc5b commit 3469842
Show file tree
Hide file tree
Showing 5 changed files with 82 additions and 64 deletions.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions FinalExcercise/src/Main.java
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ public static void main(String[] args) {
case 2:
System.out.println("Classes names: " );
List<Course> courses = Course.printCourses(university, scan);
Course.subMenu(courses, university, scan);
Course.subMenu(courses, scan);
break;

case 3:
Expand All @@ -47,7 +47,7 @@ public static void main(String[] args) {
break;

case 5:
Student student_required = Student.askForStudentName(university, scan);
Student student_required = (Student) Student.askForInfo(university, scan);
Course.listCoursesFromStudent(university, student_required);
break;

Expand Down
54 changes: 30 additions & 24 deletions FinalExcercise/src/Models/Course.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,13 @@
import Models.EducationalCommunity.Professor;
import Models.EducationalCommunity.Student;
import Utils.ProperNounsManager;
import Utils.Questioner;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Course extends ProperNounsManager {
public class Course extends ProperNounsManager implements Questioner {
String classroom;
List<Student> students;
Professor professor;
Expand Down Expand Up @@ -102,7 +103,7 @@ public static List<Course> printCourses(University university, Scanner scan){

}

public static void subMenu(List<Course> courses, University university, Scanner scan){
public static void subMenu(List<Course> courses, Scanner scan){

boolean course_found = false;
while (!course_found) {
Expand Down Expand Up @@ -220,7 +221,7 @@ public static void askForNewCourse(University university, Scanner scan){
}
}

String classroom = askClassroom(entered_course_name,scan);
String classroom = (String) askForInfo(entered_course_name, scan);
Professor professor = Professor.askForProfessor(university, entered_course_name,scan);
List<Student>students = Student.askForExistingStudents(university, entered_course_name, scan);

Expand All @@ -239,27 +240,6 @@ public static void askForNewCourse(University university, Scanner scan){
}
}

public static String askClassroom(String entered_course_name, Scanner scan) {

boolean classroom_entered = false;

String entered_classroom = null;

while (!classroom_entered) {

System.out.println("Enter the name of the classroom you want to assign to the " + entered_course_name + " class:");
scan = new Scanner(System.in);
entered_classroom = scan.nextLine().trim();

if (entered_classroom.isEmpty()) {
System.out.println("Classroom name cannot be empty");
continue;
} else {
classroom_entered = true;
}
}
return entered_classroom;
}

public static void listCoursesFromStudent(University university, Student student){
List<Course> courses = university.getCourses();
Expand Down Expand Up @@ -295,4 +275,30 @@ public static void printInfo(Object course) {
}
}
}


public static Object askForInfo(Object entered_course_name, Scanner scan) {
String entered_classroom = null;

if(entered_course_name instanceof String){
boolean classroom_entered = false;


while (!classroom_entered) {

System.out.println("Enter the name of the classroom you want to assign to the " + entered_course_name + " class:");
scan = new Scanner(System.in);
entered_classroom = scan.nextLine().trim();

if (entered_classroom.isEmpty()) {
System.out.println("Classroom name cannot be empty");
continue;
} else {
classroom_entered = true;
}
}
}
return entered_classroom;

}
}
79 changes: 41 additions & 38 deletions FinalExcercise/src/Models/EducationalCommunity/Student.java
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
package Models.EducationalCommunity;
import Models.University;
import Utils.ProperNounsManager;
import Utils.Questioner;

import java.util.ArrayList;
import java.util.InputMismatchException;
import java.util.List;
import java.util.Scanner;

public class Student extends ProperNounsManager {
public class Student extends ProperNounsManager implements Questioner {
private static int lastId = 0;
int id;
int age;
Expand Down Expand Up @@ -99,7 +101,7 @@ public static Student askForStudentInfo(Scanner scan) {
public static List<Student> askForExistingStudents(University university, String entered_course_name, Scanner scan){
List<Student> students = printStudents(university);

System.out.println("Enter the bullet number of the student(s) you want to add to the " + entered_course_name + " class followed by comas \n" +
System.out.println("Enter the bullet number of the student(s) you want to add to the " + entered_course_name + " class followed by commas \n" +
"e.g: 1,2,5,4");
scan = new Scanner(System.in);
String entered_ids = scan.nextLine().trim();
Expand All @@ -117,52 +119,53 @@ public static List<Student> askForExistingStudents(University university, String
}
return students_chosen;
}

public static Student askForStudentName(University university, Scanner scan){
printStudents(university);

public static List<Student> printStudents(University university) {
System.out.println("Here is a list of the existing students at the university:");
List<Student> students = university.getStudents();
for (Student student : students) {
String name_student = student.getName();
int id_student = student.getId();
System.out.println(id_student + ". " + name_student);
}
return students;
}

public static Object askForInfo(Object university, Scanner scan){
Student student = null;
boolean student_entered = false;

while (!student_entered) {
if(university instanceof University){
printStudents((University) university);

System.out.println("Enter the name of the student:");
scan = new Scanner(System.in);
String entered_student_name = scan.nextLine().trim();
boolean student_entered = false;

if (entered_student_name.isEmpty()) {
System.out.println("Student name cannot be empty");
continue;
}
while (!student_entered) {

if (entered_student_name.matches("\\d+")) {
System.out.println("Student name cannot consist of only numbers");
continue;
}

List<Student> students= university.getStudents();
for (Student student_registered: students) {
String name_student = student_registered.getName();
if (name_student.equalsIgnoreCase(entered_student_name)) {
student=student_registered;
student_entered = true;
System.out.println("Enter the name of the student:");
scan = new Scanner(System.in);
String entered_student_name = scan.nextLine().trim();

if (entered_student_name.isEmpty()) {
System.out.println("Student name cannot be empty");
continue;
}
}

}
return student;

if (entered_student_name.matches("\\d+")) {
System.out.println("Student name cannot consist of only numbers");
continue;
}

}
List<Student> students= ((University) university).getStudents();
for (Student student_registered: students) {
String name_student = student_registered.getName();
if (name_student.equalsIgnoreCase(entered_student_name)) {
student=student_registered;
student_entered = true;
}
}

public static List<Student> printStudents(University university) {
System.out.println("Here is a list of the existing students at the university:");
List<Student> students = university.getStudents();
for (Student student : students) {
String name_student = student.getName();
int id_student = student.getId();
System.out.println(id_student + ". " + name_student);
}
}
return students;
return student;
}
}
9 changes: 9 additions & 0 deletions FinalExcercise/src/Utils/Questioner.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package Utils;

import java.util.Scanner;

public interface Questioner {
public static Object askForInfo(Object obj, Scanner scan) {
return null;
}
}

0 comments on commit 3469842

Please sign in to comment.