There will be 12 labs assigned over the course of the semester; your best 10 scores will be used to compute your lab average. All lab sessions are led by TAs. To receive credit for attending the lab and completing the lab assignment, your work must be verified by your TA.

You must attend your assigned lab section and the lab assignment must be completed during the assigned lab time.

During the lab, your TA will explain the lab assignment, provide assistance as needed, and record your successful completion of the assignment.

Lab assignments are graded on a scale from 0 to 10 at the discretion of the TAs.

10Successfully completed the lab assignment
8Made a good attempt to complete the lab assignment
5Attended the lab, but made little or no effort to complete the assignment
0Did not attend the lab

If you made a good attempt to complete a lab assignment within the alloted time, but were unable to finish it, you may complete the assignment on your own and show it to your TA to have the grade changed from an 8 to a 9. This must be done within one week of the original lab date.

To request that a lab grade be changed from an 8 to a 9, you must show the completed assignment to your TA before your next lab session. For the final lab of the semester, you must show the completed lab to your TA no later than the last day of classes.

Required Lab Times

Section TA Day Time Room
02 Neha Tilak Mo 1000 – 1050 ENG 104A
03 Sudip Mittal We 1000 – 1050 ENG 104A
04 Neha Tilak Mo 1100 – 1150 ENG 104
05 Aishwarya Bhide We 1100 – 1150 ENG 104
14 Sudip Mittal Mo 1600 – 1650 ENG 104
15 Sudip Mittal We 1600 – 1650 ENG 104

Lab Exercises (topics subject to change)

Week of Exercise
Aug 31 Lab 1: Review of Emacs and UNIX
Sep 14 Lab 2: C-strings and Functions
Sep 21 Lab 3: Introduction to Google Test
Sep 28 Lab 4: Creating a C++ Class
Oct 5 Lab 5: More Practice with C++ Classes
Oct 12 Lab 6: Linked Lists
Oct 19 Lab 7: Debugging with gdb
Oct 26 Lab 8: Inheritance
Nov 2 Lab 9: Polymorphism
Nov 9 Lab 10: Operator Overloading
Nov 16 Lab 11: Templates
Nov 30 Lab 12: Exceptions