ASSIGNMENTS | SUPPORTING FILES |
---|---|
Assignment 1 | |
Test data: floating.data (ZIP) (This ZIP file contains: 7 .in files and 7 .out files.) | |
Test data: matrix.data (ZIP) (This ZIP file contains: 10 .in files and 10 .out files.) | |
Test data: matrix2.data (ZIP - 20.7MB) (This ZIP file contains: 11 .in files and 11 .out files.) | |
Problem 4: Transposition Cipher (PDF) No sample solution available. |
Test data: loop.data (ZIP - 19.1MB) (This ZIP file contains: 10 .in files and 10 .out files.) |
Assignment 2 | |
Solution code and test data: list (ZIP) (This ZIP file contains: 2 .h files, 2 .c files, 1 .make file and 1 .txt file.) | |
Solution code and test data: mst (ZIP - 5.3MB) (This ZIP file contains: 1 .make file and 1 .cpp file.) | |
Solution and test data: rational (ZIP) (This ZIP file contains: 2 .h files, 3 .cpp files, 1 .make file and 1 .txt file.) | |
Assignment 3 | |
Solution and test data: cpplist (ZIP) (This ZIP file contains: 3 .h files, 4 .cpp files, 1 .make file and 1 .txt file.) | |
Assignment 4 (Final Project) | |
Problem: N-Body Gravity Simulation (problem statement available in Lecture Notes for Lecture 8) | Starting environment: nbody (ZIP - 2.2MB) (This ZIP file contains: 5 .h files, 5 .mk files, 7 .cpp files, 1 .make file and 1 .txt file.) |
More Details on Assignment 4 (Final Project)
The following should be included as your final project deliverables:
- Zip file containing the group’s project environment that contains the full source code and can be used for setup.
- Overview of the project: What are the important features you’ve created? What was challenging, and what have you achieved?
- A short write-up describing the division of work. For example, “We decided to have person X and Y work primarily on the physics engine while Z developed the visualization components…”
- A short description of the project’s structure, including descriptions of important classes and their interactions. If you can make a readable diagram of the interactions, you can submit that rather than a text description.
- Screenshots of the results and description of how to operate your project. Examples include images of the visualization in operation, what happens when you run certain n-body systems, etc.
The operative words for the written bits are “short” and “concise”—don’t write an essay. Describe enough to give an overview of the system; if your code is well written, you should have to write very little!
Code Review
You should choose a bite-sized chunk that will take you approximately 45 minutes to an hour to fully review. The following should be included when submitting a code review:
- The snippet of code you are reviewing: more than 30 lines, less than 100.
- Your comments interspersed in their code.
- A summary of main points relating to the review (what they did well, major areas for improvement, common issues, general observations).
Use the C++ Coding Standards and Best Practices provided to guide your review.