CS 113: Intro to Computer Science II with Intensive C++

Spring 2003

Class meeting time:   TR 9:30-11:00,   CAS B18-B (hopefully our final room).

Section meeting times:    Tuesday 1-2 PM, Thursday 3-4 PM (both times subject to change) in the Undergraduate Teaching Laboratory, ENA 304.


Instructor:  John W. Byers

MCS 280
Phone: 617-353-8925
Dept. of Computer Science                                                    
Email: byers@cs.bu.edu
Boston University
Fax:    617-353-6457

Office Hours:    Monday 1:30 - 3:00 and Thursday 11:00 - 12:30.


Teaching Fellow:  Marwan Fayed

Email: mfayed@cs.bu.edu

Office Hours:    Monday 3:00 - 4:00 and Wednesday 4:30 - 6:30 in B24.

Labs:    Held in ENA 304. Click here for the lab homepage.


Course Overview:     This course begins with an intensive introduction to C++ and then covers all the materials in CS 112. You will learn advanced programming techniques involving dynamic memory allocation, pointers, linked lists, stacks, recursion, trees, and some searching and sorting. All of this will be embedded into the highly-disciplined structure provided by the object-oriented programming language C++.

Prerequisites:     This course is designed for students who already program proficiently in PASCAL, C, Java, or some other high-level programming language. Note: If you do not have such previous exposure to programming, then you are requested to transfer to CS 111. If you are already proficient in C++, then CS 112 is probably the course for you. Please consult the instructor if you are uncertain about your preparation.

You are expected to be familiar with UNIX and EMACS. Some help will be available in the section, but if you have not used UNIX or EMACS before, then you should attend the appropriate tutorials provided by B.U. Office of Information Technology: http://www.bu.edu/cc/tutorials/.

Textbooks:     The required textbooks are:

The first of these books will be used for the intensive C++ portion of the course, the latter will be used for the second half of the course, in which we will study basic data structures.

Homework Assignments:     We will have regular programming assignments due roughly every other week. Here are the general guidelines we will use to grade your assignments. Other specific guidelines will be provided on a per-assignment basis. To submit your assignments you must use gsubmit (follow this link for documentation).

The following class schedule will be updated frequently to reflect what we have covered so far.

Handouts: