summaryrefslogtreecommitdiff
path: root/src/Q7
diff options
context:
space:
mode:
Diffstat (limited to 'src/Q7')
-rw-r--r--src/Q7/README.md87
1 files changed, 79 insertions, 8 deletions
diff --git a/src/Q7/README.md b/src/Q7/README.md
index 8f79356..df7e40c 100644
--- a/src/Q7/README.md
+++ b/src/Q7/README.md
@@ -45,20 +45,91 @@ although it goes by many other names as well.
Write a program that reads in a number from the user and then displays the Hailstone sequence for that number,
followed by a line showing the number of steps taken to reach 1.
-
2. Description of the Code:
-[Briefly describe how you solved the problem in your code. You should include short description of classes, methods, and variables (if necessary) that you used in your code.]
+My first implementation of this algorithm used an iterative approach. I
+later changed it to use a recursive approach because I felt the code was
+a little bit easier to read and blowing the stack or performance wasn't
+a big concern for this exercise.
-3. Errors and Warnings:
+The base case for the recursion is `n == 1`.
-[Please enlist your Errors and Warnings (maximum five) that you encountered in your code and how you solved them. An example of this is shown in Table 1.]
-Table 1: List of Errors and Warnings Encountered in the Program
+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 48 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.05 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.006 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.001 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 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 sec
+Running ca.mokhan.test.HailstoneSequenceTest
+Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec
+
+Results :
+
+Tests run: 52, Failures: 0, Errors: 0, Skipped: 0
+
+[INFO] ------------------------------------------------------------------------
+[INFO] BUILD SUCCESS
+[INFO] ------------------------------------------------------------------------
+[INFO] Total time: 2.912 s
+[INFO] Finished at: 2019-05-13T21:33:23-06:00
+[INFO] ------------------------------------------------------------------------
+```
4. Sample Input and Output:
-[Provide some test cases with sample input and output of your program.]
-5. Discussion:
+Tests can be found in `HailstoneSequenceTest.java`.
-[In this section, you may include some discussion about the debugging strategy that you used, e.g., searched the Web for a solution, contacted tutor, solved by self, used a debugging tool, posted in forum, talked to a friend, etc.]
+5. Discussion: