Learning Profile for Assignment #1, And Question #8 Name: Mo Khan Student ID: 3431709 1. Problem Statement: Google Inc. is looking to recruit three of the Boston runners. The criteria for selection are as follows: * I. Average final marks in bachelor’s degree (store up to 2 decimal places). The fifteen candidates have the following grades: 82.30%, 85.10%, 77.77%, 69.93%, 93.03%, 88.61%, 55.99%, 87.49%, 88.00%, 91.20%, 66.79%, 76.65%, 55.89%, 90.01%, and 87.9%. * II. Ability to communicate as one of the three values – "excellent", "average", and "poor". The fifteen candidates have the following ability to communicate, respectively: poor, poor, average, average, average, poor, excellent, excellent, excellent, average, excellent, average, excellent, excellent, poor. * III. Innovation as one of the two values – "brilliant" and "average" (store as a Boolean; brilliant = true and average = false). The fifteen candidates have the following innovative abilities: brilliant, average, average, average, brilliant, brilliant, average, brilliant, average, brilliant, average, brilliant, brilliant, average, average. * IV. Ability to regulate one’s own skill as a probability value between 0 and 1.0 – 1.0 implies excellent regulatory capabilities and 0.0 implies no skills to regulate (store as a double). The fifteen candidates have the following regulatory abilities: 0.5, 1.0, 0.8, 0.0, 1.0, 0.7, 0.8, 0.9, 0.5, 0.6, 0.3, 0.2, 0.5, 0.3, 0.8. Store these values for the fifteen candidates in an extended AddressBook class. In general, Google will not consider a candidate with average marks of less than 85%. Google will consider a candidate with average marks of less than 85% only if the candidate at least has 0.5 regulatory abilities and at least 'average' ability to communicate. Google will only consider a candidate with poor communication ability if the candidate has a 'brilliant' innovation capability. Write a program that will help Google to programmatically determine eligibility of the fifteen candidates for these positions, and print the output on the console. 2. Description of the Code: I created two classes to solve this problem. The first class is the `Candidate` class and the second is the `Communication` class. I used the `Communication` class to control sort order and precedence of one communication level with another using the `Comparable` interface. In the `Candidate` class I created a method called `isEligible` that calculates if the candidate is eligible for a position at the company. 3. Errors and Warnings: ```bash モ mvn test [INFO] Scanning for projects... [INFO] [INFO] -------------------< ca.mokhan.comp268:assignment1 >-------------------- [INFO] Building assignment1 1.0-SNAPSHOT [INFO] --------------------------------[ jar ]--------------------------------- [INFO] [INFO] --- fmt-maven-plugin:2.8:format (default) @ assignment1 --- [INFO] Processed 47 files (0 reformatted). [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ assignment1 --- [WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent! [INFO] skip non existing resourceDirectory /Users/mokha/development/gh/comp-268/src/main/resources [INFO] [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ assignment1 --- [INFO] Changes detected - recompiling the module! [WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent! [INFO] Compiling 24 source files to /Users/mokha/development/gh/comp-268/target/classes [INFO] [INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ assignment1 --- [WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent! [INFO] skip non existing resourceDirectory /Users/mokha/development/gh/comp-268/src/test/resources [INFO] [INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ assignment1 --- [INFO] Changes detected - recompiling the module! [WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent! [INFO] Compiling 24 source files to /Users/mokha/development/gh/comp-268/target/test-classes [INFO] [INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ assignment1 --- [INFO] Surefire report directory: /Users/mokha/development/gh/comp-268/target/surefire-reports ------------------------------------------------------- T E S T S ------------------------------------------------------- Running ca.mokhan.comp268.AppTest Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.007 sec Running ca.mokhan.test.CandidateTest Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.057 sec Running ca.mokhan.test.NumberTest Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.02 sec Running ca.mokhan.test.EmployeeSavingsTest Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.005 sec Running ca.mokhan.test.CartesianCoordinateSystemTest Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec Running ca.mokhan.test.CommunicationTest Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec Running ca.mokhan.test.TaxReturnTest Tests run: 12, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec Running ca.mokhan.test.BanffMarathonRunnerTest Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec Running ca.mokhan.test.AddressBookTest Tests run: 12, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec Running ca.mokhan.test.TriangleTest Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec Running ca.mokhan.test.BonusOnSavingsTest Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec Running ca.mokhan.test.HailstoneSequenceTest Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec Results : Tests run: 52, Failures: 0, Errors: 0, Skipped: 0 [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 2.907 s [INFO] Finished at: 2019-05-13T21:37:20-06:00 [INFO] ------------------------------------------------------------------------ ``` 4. Sample Input and Output: Tests are available in `CandidateTest.java` and `CommunicationTest.java`. 5. Discussion: