Learning Profile for Assignment #1, And Question #5 Name: Mo Khan Student ID: 3431709 1. Problem Statement: Solve the following problem using a program: Suppose you save $100 each month into a savings account with an annual interest rate of 5%. Thus, the monthly interest rate is 0.05/12 = 0.00417. After the first month, the value in the account becomes 100 * (1 + 0.00417) = 100.417 After the second month, the value in the account becomes (100 + 100.417) * (1 + 0.00417) = 201.252 And after the third month, the value in the account becomes (100 + 201.252) * (1 + 0.00417) = 302.507 ... and so on. Write a program that randomly generates monthly savings amounts for the 15 runners in Problem 4. Each monthly saving should be in the range of $100 to $800. Extend the AddressBook class to store the monthly savings generated by the random number generator. Then, display the final account value for each of the 15 runners. 2. Description of the Code: I created a constructor overload that accepts the `monthlyContribution` as a parameter. This made it easier to write unit tests rather than depend on random monthlyContributions. The constructor that accepts a `firstName` and `lastName` will generate a random `monthlyContribution` and chain to the overloaded constructor. I had no idea what `d1` and `d2` means, so I didn't use those parameters. I designed this class so that you could predict the future value for `n` months from now. I did assign the `accountValue` to a prediction of 12 months from now. I would have preferred to implement an interface that didn't require private instance variables and rather depend on calculations on the fly but I did my best to bride the requirements with my own preferences. 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.006 sec Running ca.mokhan.test.CandidateTest Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.053 sec Running ca.mokhan.test.NumberTest Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.021 sec Running ca.mokhan.test.EmployeeSavingsTest Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.007 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 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.002 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: 3.620 s [INFO] Finished at: 2019-05-13T21:26:40-06:00 [INFO] ------------------------------------------------------------------------ ``` 4. Sample Input and Output: [Provide some test cases with sample input and output of your program.] Tests are available in `EmployeeSavingsTest.java`. 5. Discussion: