Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Calendar;
- import java.util.HashMap;
- import java.util.Random;
- class Person {
- protected String name;
- protected String surname;
- protected Calendar birthday;
- public void setName(String name) {
- this.name = name;
- }
- public void setSurname(String surname) {
- this.surname = surname;
- }
- public void setBirthday(Calendar date) {
- this.birthday = date;
- }
- public String getName() {
- return this.name;
- }
- public String getSurname() {
- return this.surname;
- }
- public int getAge() {
- int year = Calendar.getInstance().get(Calendar.YEAR);
- int birthYear = this.birthday.get(Calendar.YEAR);
- return year-birthYear;
- }
- }
- class Student extends Person {
- private HashMap<Subject, Mark> marks = new HashMap<>();
- public void setMarks(HashMap marks) {
- this.marks = marks;
- }
- public HashMap<Subject, Mark> getMarks() {
- return this.marks;
- }
- public float getAverage() {
- int sum = 0;
- for (Mark mark : this.marks.values()) {
- sum += mark.getMark();
- }
- return sum/this.marks.size();
- }
- }
- class Teacher extends Person {
- private Subject firstSubject;
- private Subject secondSubject;
- public void setFirstSubject(Subject firstSubject) {
- this.firstSubject = firstSubject;
- }
- public void setSecondSubject(Subject secondSubject) {
- this.secondSubject = secondSubject;
- }
- public Subject getFirstSubject() {
- return this.firstSubject;
- }
- public Subject getSecondSubject() {
- return this.secondSubject;
- }
- }
- class Mark {
- private Subject subjectName;
- private int note;
- public void setSubject(Subject subject) {
- this.subjectName = subject;
- }
- public void setMark(int note) {
- this.note = note;
- }
- public Subject getSubject() {
- return this.subjectName;
- }
- public int getMark() {
- return this.note;
- }
- }
- class Subject {
- private String name;
- public void setName(String name) {
- this.name = name;
- }
- public String getName() {
- return this.name;
- }
- }
- public class Main {
- public static void main(String[] args) {
- String[] sbjs = new String[]{"Mathematik", "Informatik", "Englisch", "Deutsch", "Religion",
- "Wirtschaftslehre", "Gesellschaftslehre", "Physik", "Sport", "Elektrotechnik"};
- Subject[] subjects = new Subject[sbjs.length];
- for (int i = 0; i < sbjs.length; i++) {
- Subject subject = new Subject();
- subject.setName(sbjs[i]);
- subjects[i] = subject;
- }
- Random rng = new Random();
- String[] names = new String[]{"Detlef", "Angelo", "Matheus", "Martin", "Daniel", "Garry", "Merry"};
- String[] surnames = new String[]{"Jansen", "Schmidt", "Viernes", "Soplica", "Berg", "Beckes", "McQueen"};
- Student[] students = new Student[names.length];
- for (int i = 0; i < names.length; i++) {
- int nr1 = rng.nextInt(names.length);
- int nr2 = rng.nextInt(surnames.length);
- int year = 1990 + rng.nextInt(12);
- int month = rng.nextInt(11);
- int day = 1 + rng.nextInt(29);
- Calendar birthday = Calendar.getInstance();
- birthday.set(year, month, day);
- Student student = new Student();
- student.setName(names[nr1]);
- student.setSurname(surnames[nr2]);
- student.setBirthday(birthday);
- HashMap<Subject, Mark> marks = new HashMap<>();
- for (Subject subject : subjects) {
- int mk = 1 + rng.nextInt(5);
- Mark mark = new Mark();
- mark.setMark(mk);
- mark.setSubject(subject);
- marks.put(subject, mark);
- }
- student.setMarks(marks);
- students[i] = student;
- }
- String[] namess = new String[]{"Angela", "Michael", "Patrik", "Emil"};
- String[] surnamess = new String[]{"Merkel", "Hier", "Smith", "Freitag"};
- Teacher[] teachers = new Teacher[namess.length];
- for (int i = 0; i < namess.length; i++) {
- int nr1 = rng.nextInt(namess.length);
- int nr2 = rng.nextInt(surnamess.length);
- int year = 1960 + rng.nextInt(30);
- int month = rng.nextInt(11);
- int day = 1 + rng.nextInt(29);
- Calendar birthday = Calendar.getInstance();
- birthday.set(year, month, day);
- Teacher teacher = new Teacher();
- teacher.setName(names[nr1]);
- teacher.setSurname(surnames[nr2]);
- teacher.setBirthday(birthday);
- int sub1 = rng.nextInt(subjects.length);
- int sub2 = rng.nextInt(subjects.length);
- teacher.setFirstSubject(subjects[sub1]);
- teacher.setSecondSubject(subjects[sub2]);
- teachers[i] = teacher;
- }
- System.out.println("Students: ");
- System.out.println();
- for (Student student : students) {
- System.out.println("Name: "+student.getName());
- System.out.println("Surname: "+student.getSurname());
- System.out.println("Age: "+student.getAge());
- System.out.println("Marks:");
- for (Mark mark : student.getMarks().values()) {
- System.out.println("\t"+mark.getSubject().getName()+": "+mark.getMark());
- }
- System.out.println("Average: "+student.getAverage());
- System.out.println();
- }
- System.out.println("Teachers: ");
- System.out.println();
- for (Teacher teacher : teachers) {
- System.out.println("Name: "+teacher.getName());
- System.out.println("Surname: "+teacher.getSurname());
- System.out.println("Age: "+teacher.getAge());
- System.out.println("First subject: "+teacher.getFirstSubject().getName());
- System.out.println("Second subject: "+teacher.getSecondSubject().getName());
- System.out.println();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement