COL100 : Introduction to Computer Science : Labs (written, online and programming assignments)

All lab assignments are to be done in groups of at most two people. The two people in a group must belong to the same section.

Update Lab Work (ONLY FOR COL-100 STAFF)

View Lab Work

View Lab Roster

Lab Sessions:

Lab Assignment 1: Getting Familiar With Environment

Lab Assignment 2: Introduction to C++

Lab Assignment 3: I/O, if-then-else

Lab Assignment 4: Graded Assignment 1

Lab Assignment 5: Scope, Functions

Lab Assignment 6: Reference parameters, return values, square root by Newton's method

Lab Assignment 7: Graded Assignment 2

Lab Assignment 8: String functions

Lab Assignment 9: Graded Assignment 3

Lab Assignment 10: vector, istringstream, ostringstream

Lab Assignment 11: Graded Assignment 4

Lab Assignment 12: Stacks, Queues, GDB

Lab Assignment 13: Graded Assignment 5

Lab Assignment 14: Maps and Recursion

Lab References:

vector of vector

Use Stanford libraries without Qt (Easy to use)

simpio.h (STANFORD LIBRARY FUNCTIONS)

QT Creator (Beginners Guide)

Qt creator on Windows

vector(STL) Reference for Graded Assignment 3 submissions

FAQ

Resources required to attempt the labs

Here we list some instructions to set up the environment required to attempt the lab assignments. This environment has already been set up in LHC lab 503. These instructions are useful if you would like to set up the environment locally on your laptop or desktop. You need Linux OS to set up the environment.

Note: If you only have access to a Windows/Mac machine, we recommend using VirtualBox to install Linux as a "virtual machine" inside your Windows/Mac operating system. You can follow this excellent tutorial on how to install VirtualBox, how to download a Linux ISO image, and how to install Linux (Ubuntu) as a virtual machine using VirtualBox: http://www.psychocats.net/ubuntu/virtualbox

Once you're booted to your Linux machine (or virtual machine), follow these instructions to ensure that all the required dependencies are installed: