CS 102 Laboratories
| Lab |
Time |
Day |
Assistant |
Grader |
Grader Email |
| 1 |
8:00 AM to 10:00 AM |
Thursday |
Kartik Chander |
Usman Naim |
unaim@usc.edu |
| 2 |
2:00 PM to 4:00 PM |
Thursday |
Saad Fazil |
Farrukh Zafar |
zafar@usc.edu |
| 3 |
8:00 AM to 10:00 AM |
Friday |
Kartik Chander |
Keyur Shah |
kjs@usc.edu |
| 4 |
10:00 AM to 12:00 AM |
Friday |
Saad Fazil |
Jerome Hou |
jhou@usc.edu |
| 5 |
12:00 AM to 2:00 PM |
Friday |
Rajeev Shah |
Siva Jayaraman |
jayarama@usc.edu |
| 6 |
2:00 PM to 4:00 PM |
Friday |
Rajeev Shah |
Naveen Prabhu |
prabhu@usc.edu |
Lab Assignments
The results from assignments are to be demonstrated in-lab. Please examine them before the lab session as
some of these require advance preparation.
Lab Session 1 (week 2)
Lab Session 2 (week 3)
Lab Session 3 (week 4)
Lab Session 4 (week 5)
Lab Session 5 (week 6)
Lab Session 6 (week 7)
Lab Session 7 (week 8)
No lab in week 9 (mid-term exam)
No lab in week 10 (spring recess)
Lab Session 8 (week 11)
Lab Session 9 (week 12)
Lab Session 10 (week 13)
Lab Session 11 (week 14)
Lab Session 12 (week 15)
Programming Projects
Project Grading Criteria
Each project is worth 50 points: 20 points for the report and 30 points for
the implementation of required features as demonstrated by the output
and source code of a program written in C++.
Report points are awarded as follows:
- Does the student discuss what his program is supposed to do (specification)? 2 points.
- Does the student discuss how his program is designed to meet the specification? 3 points.
- Does the student document his important design decisions? 10 points.
- Does the student discuss the design of his test approach and relevant issues? 3 points.
- Does the student discuss his output or test results? 2 points.
Implementation points are awarded as follows:
- Does the program function properly to meet minimum requirements? 20 points.
- Is the program constructed using appropriate data structures and algorithms? 5 points.
- Is the program written in multi-file style (header, implementation, application)
and is the code formatted consistently with comments where necessary? 5 points.
Graders, of course, may award partial credit as appropriate. Graders must clearly document
in green or blue ink why points were taken off. Where points are taken off for repeated
errors, a shorthand code reference system may be adopted.
Evidence of plagairism shall be referred immediately to the instructor for investigation and
disciplinary action.
Programming Project One
Due on paper in the laboratory of week five: Project 10 on page 86 of Main and Savitch:
Lunar Lander Simulator
The project report should have separate sections for specification, design, source code,
and test results. Document your design decisions.
What is the velocity at touch-down with the default parameters? How can you make
it have a soft landing?
Programming Project Two
Due on paper in lab session of week eight: Project 7 on page 259 of Main and Savitch:
Linked List Sorting Function
The project report should have separate sections for specification,
design, source code, and test results. Document your design decisions. You will need
an application file for testing your function.
Programming Project Three
Due on paper in lab session of week thirteen: Project 3 on page 343 of Main and Savitch:
Printing n-Strings Using a Stack
Your project testing and report requirements are similar to those for the previous
projects. Demonstrate your program with characters in the range 'a' to 'z' ('a' = first
and 'z' = last) for n of length 1, 2, 3, 4, 5, ... and so on until you decide that the
run time is too long for practical purposes.
Programming Project Four
Due on paper in lab session of week fifteen: Project 10 on page 386 of Main and Savitch:
Airport Simulation
Notice that the requirements of this project are such that it will not be able to handle
correctly airplanes in the air before midnight landing after midnight. How could the project be
extended to be more general?
This page established August 23, 1999; last updated March 7, 2000 by Rick Wagner.