CSCI 161 Computer Science II Lab Info
(M23N01)

Sample solutions
lab1.cpp
lab2.cpp (and test script and test files)
lab3.cpp , main.cpp (shows both mergesort and quicksort solutions)
lab4: dllist.cpp , and postfix.cpp
lab5: bstree.cpp
Getting lab feedback:
As with the labs themselves, your feedback will be supplied through a git repository, but this one you don't have to fork, and only have to clone once:
  • One time only: issue the following commands to get your initial feedback repository
    cd csci161
    git clone csci:csci161/$USER/feedback
  • Each time you want to check for your latest feedback, go to your feedback directory and use a "pull" command to get updates:
    cd feedback (assuming you were in your csci161 directory)
    git pull
  • You can then use "ls" to see which feedback files I've added. To start with, there is just one called "lab1".
  • Use any editor you like to read the feedback in the file, please ask if you have any questions about the marking.

Each 161 student is registered in the weekly lab session in room 102 in building 315 (Wednesdays 3:30-5:30).

Students are expected to attend their registered lab section each week, with the exception of the first week (May 1-5) during which we won't run a lab.

In the lab sessions students will receive hands-on practice with the tools and techniques discussed in lectures, as well as guidance on the practical use of the linux operating system, the g++ compiler, make (for automated compilation), gdb (for debugging), git (for version control), ssh (for remote connections), and other tools/topics as they become necessary.

During the lab sessions we will also discuss the requirements and recommended approaches for the five lab exercises the student will be submitting this semester, and the requirements and recommended approaches for the course project.

Quizzes and lab exams will held in labs
The course quizzes and lab exam will be held during some lab sessions, students must attend their registered lab section to get credit for the quizzes/lab exams.

Details are provided on the course exams/quizzes page.

Lab exercises
There are five lab exercises, each worth 6% of your final grade.

Specific processes will be described for obtaining and submitting these lab exercises. Being able to follow technical instructions and to learn and use new tools and techniques is crucial for success in any form of software development. As such, only lab exercises submitted through the specified processes will be accepted for grading. Printouts or emailed submissions will not be accepted for grading.

Lab exercises
Each of the five lab exercises is described in detail on the pages below:

Code standards
For full marks, your submitted C++ code must adhere to the CSCI 161 code standards

Late penalties
Late penalties are based on the maximum possible mark and applied as follows: Note that the lab/project deadlines shown by git are the cutoff point beyond which git submission is no longer possible, the deadlines for marks are as shown above.

Helpful links
CSCI 159 slides/videos
useful tips (from 159, but mostly still relevant)

Tech notes page
password resets