eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Java Человек Учитель 5

опубликовано 04.04.2024, 08:32:46

import java.util.ArrayList;

class Person { protected String Surname, Name; protected int Age;

Person(String Surname, String Name, int Age) {
    this.Surname = Surname;
    this.Name = Name;
    this.Age = Age;
}

public String toString() {
    return Surname + " " + Name + " " + Age;
}

}

class Teacher extends Person { protected String Subject; protected int Salary;

Teacher(String Surname, String Name, int Age, String Subject, int Salary) {
    super(Surname, Name, Age);
    this.Subject = Subject;
    this.Salary = Salary;
}

public String toString() {
    return super.toString() + " " + Subject + " " + Salary;
}

}

class ListOfPeople { ArrayList<Person> a = new ArrayList<Person>();

public void add(Person p) {
    a.add(p);
}

public int size() {
    return a.size();
}

public String toString() {
    StringBuilder result = new StringBuilder();
    for (Person p : a) {
        result.append(p.toString()).append("\n");
    }
    return result.toString();
}

public Teacher getOldestTeacher() {
    Teacher oldestTeacher = null;
    int maxAge = Integer.MIN_VALUE;
    for (Person p : a) {
        if (p instanceof Teacher && p.Age > maxAge) {
            oldestTeacher = (Teacher) p;
            maxAge = p.Age;
        }
    }
    return oldestTeacher;
}

public Teacher getOldestTeacher(String Subject) {
    Teacher oldestTeacher = null;
    int maxAge = Integer.MIN_VALUE;
    for (Person p : a) {
        if (p instanceof Teacher && ((Teacher) p).Subject.equals(Subject) && p.Age > maxAge) {
            oldestTeacher = (Teacher) p;
            maxAge = p.Age;
        }
    }
    return oldestTeacher;
}

public Teacher getYoungestTeacher() {
    Teacher youngestTeacher = null;
    int minAge = Integer.MAX_VALUE;
    for (Person p : a) {
        if (p instanceof Teacher && p.Age < minAge) {
            youngestTeacher = (Teacher) p;
            minAge = p.Age;
        }
    }
    return youngestTeacher;
}

public Teacher getYoungestTeacher(String Subject) {
    Teacher youngestTeacher = null;
    int minAge = Integer.MAX_VALUE;
    for (Person p : a) {
        if (p instanceof Teacher && ((Teacher) p).Subject.equals(Subject) && p.Age < minAge) {
            youngestTeacher = (Teacher) p;
            minAge = p.Age;
        }
    }
    return youngestTeacher;
}

}