Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- class Person
- {
- String Name;
- String Email;
- int Age;
- public Person(String name, String email, int age) {
- Name = name;
- Email = email;
- Age = age;
- }
- public void Identify()
- {
- System.out.println("Name: " + Name + " Email: " + Email + " Age: " + Age);
- }
- public String getName() {
- return Name;
- }
- public String getEmail() {
- return Email;
- }
- public int getAge() {
- return Age;
- }
- }
- interface Worker
- {
- int getSalary();
- }
- interface AcademicInterest
- {
- String getInterest();
- }
- class Student extends Person implements AcademicInterest
- {
- int avgrade;
- String interest;
- public Student(String name, String email, int age,String interest, int avgrade) {
- super(name, email, age);
- this.interest = interest;
- this.avgrade = avgrade;
- }
- @Override
- public String getInterest() {
- return interest;
- }
- public int getAvgrade()
- {
- return avgrade;
- }
- }
- class Teacher extends Person implements Worker,AcademicInterest
- {
- int rating;
- String interest;
- int salary;
- public Teacher(String name, String email, int age,String interest,int rating,int salary) {
- super(name, email, age);
- this.rating = rating;
- this.interest = interest;
- this.salary = salary;
- }
- @Override
- public String getInterest() {
- return interest;
- }
- @Override
- public int getSalary() {
- return salary;
- }
- int getRating()
- {
- return rating;
- }
- @Override
- public void Identify()
- {
- System.out.println("{Teacher} " + "Name: " + Name + " Email: " + Email + " Age: " + Age);
- }
- }
- class Plummer extends Person implements Worker
- {
- int salary;
- public Plummer(String name, String email, int age,int salary) {
- super(name, email, age);
- this.salary = salary;
- }
- @Override
- public void Identify()
- {
- System.out.println(Name + " is a plummer.");
- }
- @Override
- public int getSalary() {
- return salary;
- }
- }
- public class PersonWorkerTeacher {
- public static void main(String [] args)
- {
- Person ppl[] = new Person[10];
- ppl[0]= new Person("Dan","mit@gmail.com",38);
- ppl[1]= new Plummer("John","john@gmail.com",48,15000);
- ppl[2]= new Student("Jacob","jacob@gmail.com",22,"Java",6);
- ppl[3] = new Student("Ian","ian@gmail.com",22,"Java",8);
- ppl[4]= new Student("Coolio", "coolio@gmail.com", 25, "Management", 9);
- ppl[5]= new Student("Mark","Mark@gmail.com",23,"Java",8);
- ppl[6] = new Teacher("Fran","fran@gmail.com",52,"Java",8,50000);
- ppl[7] = new Teacher("Richie", "richie@gmail.com", 52, "Java", 8, 50000);
- ppl[8]= new Teacher("Roger", "roger@gmail.com", 39, "Management", 8, 70000);
- ppl[9]= new Teacher("Homer", "homer@gmail.com", 42, "Management", 6, 40000);
- Worker worker = new Worker() {
- @Override
- public int getSalary() {
- return 100;
- }
- };
- Scanner in = new Scanner(System.in);
- System.out.println("Choose an option <enter its index>.\n");
- System.out.println("1: Identify all Workers with Salary bigger than 20000 MKD.\n");
- System.out.println("2: Identify all Teachers with Rating bigger than 7.\n");
- System.out.println("3: Count People with the same academic interest.\n");
- System.out.println("4: Group Students and Teachers that share same academic interest and have average grade and rating bigger than 8.\n");
- int choice;
- while(true)
- {
- choice = in.nextInt();
- if(choice == 0)
- {
- break;
- }
- else if(choice == 1)
- {
- for(int i = 0;i<ppl.length;i++)
- {
- if(ppl[i] instanceof Teacher)
- {
- Teacher tmp = (Teacher)ppl[i];
- if(tmp.getSalary()>20000)
- {
- tmp.Identify();
- }
- }
- else if(ppl[i] instanceof Plummer)
- {
- Plummer tmp = (Plummer)ppl[i];
- if(tmp.getSalary() > 20000)
- {
- tmp.Identify();
- }
- }
- }
- }
- else if(choice == 2)
- {
- for(int i=0;i<ppl.length;i++)
- {
- if(ppl[i] instanceof Teacher)
- {
- Teacher tmp = (Teacher)ppl[i];
- if(tmp.getRating() > 7)
- {
- tmp.Identify();
- }
- }
- }
- }
- else if(choice == 3)
- {
- int java = 0;
- int man = 0;
- int finance = 0;
- for(int i=0;i<ppl.length;i++)
- {
- if(ppl[i] instanceof Teacher)
- {
- Teacher tmp = (Teacher)ppl[i];
- if(tmp.getInterest().equals("Java"))
- {
- java++;
- }
- else if(tmp.getInterest().equals("Management"))
- {
- man++;
- }
- else finance++;
- }
- else if(ppl[i] instanceof Student)
- {
- Student tmp = (Student)ppl[i];
- if(tmp.getInterest().equals("Java"))
- {
- java++;
- }
- else if(tmp.getInterest().equals("Management"))
- {
- man++;
- }
- else finance++;
- }
- }
- System.out.println("Java: " + java + " Management: " + man + " Finance: " + finance);
- }
- else if(choice == 4)
- {
- System.out.println("Java: ");
- for(int i = 0;i<ppl.length;i++)
- {
- if(ppl[i] instanceof Teacher)
- {
- Teacher tmp = (Teacher)ppl[i];
- if(tmp.getInterest().equals("Java"))
- {
- if(tmp.getRating() >= 8)
- {
- tmp.Identify();
- }
- }
- }
- else if(ppl[i] instanceof Student)
- {
- Student tmp = (Student)ppl[i];
- if(tmp.getInterest().equals("Java"))
- {
- if(tmp.getAvgrade() >=8)
- {
- tmp.Identify();
- }
- }
- }
- }
- System.out.println("Management: ");
- for(int i = 0;i<ppl.length;i++)
- {
- if(ppl[i] instanceof Teacher)
- {
- Teacher tmp = (Teacher)ppl[i];
- if(tmp.getInterest().equals("Management"))
- {
- if(tmp.getRating() >= 8)
- {
- tmp.Identify();
- }
- }
- }
- else if(ppl[i] instanceof Student)
- {
- Student tmp = (Student)ppl[i];
- if(tmp.getInterest().equals("Management"))
- {
- if(tmp.getAvgrade() >=8)
- {
- tmp.Identify();
- }
- }
- }
- }
- System.out.println("Finance: ");
- for(int i = 0;i<ppl.length;i++)
- {
- if(ppl[i] instanceof Teacher)
- {
- Teacher tmp = (Teacher)ppl[i];
- if(tmp.getInterest().equals("Finance"))
- {
- if(tmp.getRating() >= 8)
- {
- tmp.Identify();
- }
- }
- }
- else if(ppl[i] instanceof Student)
- {
- Student tmp = (Student)ppl[i];
- if(tmp.getInterest().equals("Finance"))
- {
- if(tmp.getAvgrade() >=8)
- {
- tmp.Identify();
- }
- }
- }
- }
- }
- System.out.println("*******************************\n");
- System.out.println("Do you like to list more?<1-yes, 0-no>");
- int end = in.nextInt();
- if (end == 1){
- System.out.println("Choose an option <enter its index>.\n");
- System.out.println("1: Identify all Workers with Salary bigger than 20000 MKD.\n");
- System.out.println("2: Identify all Teachers with Rating bigger than 7.\n");
- System.out.println("3: Count People with the same academic interest.\n");
- System.out.println("4: Group Students and Teachers that share same academic interest and have average grade and rating bigger than 8.\n");
- }
- if(end==0)
- {
- break;
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement