SYSC 2002 Data Structures and Algorithms

Winter 2009 - Assignments, Labs, Midterm and Quizzes

Home

Compiler:

We will be using Dev-C++ as the default compiler for SYSC 2002.

Note that you may use whatever C++ compiler you want to write your programs, but you must ensure that your programs can be compiled in the Dev-C++ environment provided in the SCE labs.

We recommend that you use Dev-C++ as it can be downloaded for free from http://www.bloodshed.net/dev/devcpp.html. Chapter 2 of the notes has details on downloading and setting up the Dev-C++ environment for this course.


Labs:

The labs for this course are in ME4390/ME4377. Lab tests must be submitted from your assigned machine before the end of the lab period. Assignments can be submitted from anywhere on or off campus. However, the TAs will mark your assignments on the environment in ME4390/ME4377, so you are encouraged to confirm that your programs work in the lab.

Here are the official lab section lists (updated Mon Jan 19th).

Any requests for changes should be sent by e-mail to Prof. Marshall with an explanation as to why you need to change lab sections, the lab you are currently in (if any), and the lab you would like to change to. Note that these lists override those in Carleton Central, so changing your lab section in Carleton Central will **not** change your lab section. It must be done as per the above instructions. Requests are accepted on a first-come first-served basis, and waiting lists will be maintained for any full lab sections. Note that D2 is currently full.


Marking Guidelines:

Here are the SYSC 2002 marking guidelines that the TAs will be using for the lab tests and the assignments.

You should also review the ECOR 1606 style guidelines.


Midterm and Quizzes:

Midterm and quiz solutions will be posted here.


Lab Tests:

Before each lab test a sample will be posted. After the labs, the actual lab tests will be posted here.


Assignments:

Assignments will be posted here as they become available:


Stdstuff.h:

All .cpp files should begin by including "stdstuff.h". This header file replaces all of the usual include directives (i.e. include directives for iostream.h and so on). It comes in three versions. One works for the Dev-C++ environment, one for the Visual C++ 6.0 environment and one for the Borland 5.0 environment. One advantage of using "stdstuff.h" is that it is more convenient than putting in all of the usual includes.. The real reason for using it, however, is that makes programs "platform independent". A program written using "stdstuff.h" should work in any of the three environments (provided only that the correct version of "stdstuff.h" is used).

Programs which use "stdstuff.h" should "pause" before terminating if it is necessary that the user be able to read the execution window before it disappears. The sample program below should give the idea. In the Visual case, of course, the "pause" is not really necessary, as the development environment automatically looks after preserving the execution window. The whole point, though, is that programs should work in both environments. If you leave out the "pause" when working at home in Visual, your program will work for you, but it won't work when run in the Dev-C++ or Borland environments.

    #include "stdstuff.h"

    int main () {

        .......

        pause (); // ensure that the execution window can be read before it disappears
        return 0;

    }

Dev-C++ version of "stdstuff.h"
Visual C++ 6.0 version of "stdstuff.h"
Borland 5.0 version of "stdstuff.h"


Assignment Submission:

Assignments are submitted electronically:

Check the "News and Announcements" section on the main web page for any temporary submit program issues.


Updated April 7th, 2009