From bdf1c84382a73c9a6a80212207b094ed67a03512 Mon Sep 17 00:00:00 2001 From: Murad Ibrahim Date: Sat, 30 Aug 2025 12:32:40 +0200 Subject: [PATCH] Lab Solution --- .idea/.gitignore | 3 +++ .idea/lab-java-basics.iml | 9 +++++++ .idea/misc.xml | 6 +++++ .idea/modules.xml | 8 ++++++ .idea/vcs.xml | 6 +++++ src/Employee/Employee.java | 55 ++++++++++++++++++++++++++++++++++++++ src/Employee/Intern.java | 12 +++++++++ src/Employee/Main.java | 22 +++++++++++++++ src/Numbers/Numbers.java | 54 +++++++++++++++++++++++++++++++++++++ 9 files changed, 175 insertions(+) create mode 100644 .idea/.gitignore create mode 100644 .idea/lab-java-basics.iml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml create mode 100644 src/Employee/Employee.java create mode 100644 src/Employee/Intern.java create mode 100644 src/Employee/Main.java create mode 100644 src/Numbers/Numbers.java diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/.idea/lab-java-basics.iml b/.idea/lab-java-basics.iml new file mode 100644 index 0000000..d6ebd48 --- /dev/null +++ b/.idea/lab-java-basics.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..a9182a4 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..505d07d --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/src/Employee/Employee.java b/src/Employee/Employee.java new file mode 100644 index 0000000..1bd7a97 --- /dev/null +++ b/src/Employee/Employee.java @@ -0,0 +1,55 @@ +package Employee; + +public class Employee { + private String name; + private int ID; + private double salary; + private String department; + + public Employee(String name, String department, double salary, int ID) { + this.name = name; + this.department = department; + this.salary = salary; + this.ID = ID; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public int getID() { + return ID; + } + + public void setID(int ID) { + this.ID = ID; + } + + public double getSalary() { + return salary; + } + + public void setSalary(double salary) { + this.salary = salary; + } + + public String getDepartment() { + return department; + } + + public void setDepartment(String department) { + this.department = department; + } + + @Override + public String toString() { + return "Employee [Name = " + name + ", Department = " + department + ", Salary = " + salary + ", ID = " + ID + "]"; + } + } + + + diff --git a/src/Employee/Intern.java b/src/Employee/Intern.java new file mode 100644 index 0000000..bc67420 --- /dev/null +++ b/src/Employee/Intern.java @@ -0,0 +1,12 @@ +package Employee; + +public class Intern extends Employee{ + private static final double MAX_SALARY = 20000.0; + + public Intern(String name, String department, double salary, int ID) { + super(name, department, Math.min(salary, MAX_SALARY), ID); + if (salary > MAX_SALARY) { + System.out.println("Intern salary cant exceed " + MAX_SALARY + "setting to MAX"); + } + } +} diff --git a/src/Employee/Main.java b/src/Employee/Main.java new file mode 100644 index 0000000..bde62ae --- /dev/null +++ b/src/Employee/Main.java @@ -0,0 +1,22 @@ +package Employee; + +public class Main { + public static void main(String[] args) { + Employee[] employees = new Employee[10]; + + employees[0] = new Employee("John", "IT", 50000, 67676); + employees[1] = new Employee("Chris", "CS", 30000, 12122); + employees[2] = new Employee("Amanda","HR",27000, 56789); + employees[3] = new Intern("Sukhwir", "BAR", 22500, 76343); + employees[4] = new Intern ("Ahmet", "CS,", 45000, 12345); + employees[5] = new Intern("Frank", "IT", 18000,56743 ); + employees[6] = new Intern("Grace", "HR", 25000,67854 ); // salary capped at 20000 + employees[7] = new Intern("Hank", "Finance", 20000,44544 ); + employees[8] = new Employee("Ivy", "IT", 53000,54373 ); + employees[9] = new Intern("Jack", "Marketing", 15000,33289 ); + + for(Employee e : employees){ + System.out.println(e); + } + } +} diff --git a/src/Numbers/Numbers.java b/src/Numbers/Numbers.java new file mode 100644 index 0000000..156d75b --- /dev/null +++ b/src/Numbers/Numbers.java @@ -0,0 +1,54 @@ +package Numbers; + +public class Numbers { + public static void main(String[] args) { + int[] arr = {5, 17, 3, 24, 71}; + + int difference = getDifference(arr); + + System.out.println("Difference between highest and lowest number is " + difference); + findSmallestandSecondsmallest(arr); + } + + public static int getDifference(int[] arr) { + int max = arr[0]; + int min = arr[0]; + + for (int num: arr){ + if (num > max){ + max = num; + } + if(num < min){ + min = num; + } + } + return max - min; + } + + + + public static void findSmallestandSecondsmallest (int[] arr){ + int smallest = arr[0]; + int secondsmallest = arr[0]; + for (int num : arr){ + if (num < smallest) { + secondsmallest = smallest; + smallest = num; + }else if(num < secondsmallest && num != smallest) { + secondsmallest = num ; + } + + } + + + + System.out.println("Smallest : " +smallest+ " Second Smallest: " + secondsmallest); + } + } + + + + + + +