Introduction to Computer Science II

COSC1030.03 -- Fall term 1997/98

Please remember to reload this page occasionally since it will be updated frequently and you will want to replace the version in your cache.

Last modified: 1997 Sept 5 11am

Save paper. Do not blindly print files. Click here to get a Postscript version of this WWW page that prints two logical pages per physical page.

Contents


Instructors


Course Outline

Click here to read the course outline that was handed out in class (in HTML).

Class Times and Locations

Section A  Mon, Wed, Fri 5:30-6:30    121 CCB

Office Hours:

Monday     3:30 -  4:30  250 CCB  R. Paige
Wednesday  3:30 -  4:30  250 CCB  R. Paige

Office hours for the 1030 course TA will be announced.
1020 has additional office hours.
The TAs in the lab CCB 164 are strictly for 1020 students.
The TAs in CCB 132 will answer your questions as well.
However, please give 1020 students priority.

Course Description

This course is a continuation of COSC1020 and covers some of the fundamentals of software development, various data structures (arrays, queues, stacks, trees, lists), and algorithms that use these structures (sorting, searching). An object oriented approach will be introduced. Students will use the Unix operating system with the X Window System.

Required Text:

Suggested Reference:

Useful books:


Extra Reading

This section contains extra reading material that is mentioned in class. Please read this material online.

Course Goals

Students successfully completing this course should be able to demonstrate the following knowledge and/or skill sets:


Evaluation

There are four assignments, one midterm and a final exam. Each piece of work will receive a letter grade (A+, A, B+, B, C+, C, D+, D, E or F). A final grade will be obtained by weighting the individual pieces of work as shown in the following table.

   Work            Date       Weight   Topic

Assignment 1    Mon, Sep 29      7%   Testing and ADTs
Assignment 2    Mon, Oct 20     10%   Pointers and classes
Midterm Test    Mon, Oct 27     25%   (50 minutes, in class)
Assignment 3    Mon, Nov 10      8%   Stacks and memory
Assignment 4    Fri, Dec  5     10%   Trees, pointers, recursion
Final Exam     after Dec  8     40%   Entire Course
NOTE: You must obtain a weighted GPA of 2.0 on each component of the course (exams and assignments) to pass the course. That is, you must obtain a weighted GPA of >= 2.00 on the assignments and you must obtain a weighted GPA of >= 2.00 on the exams to pass the course.

Marks will be made available online via the courseInfo Unix command. (The A flag is for the course section.)
      courseInfo 1030 A

The following York University standard letter grade system will be used.

  Grade    Definition       Point Value

     A+    Exceptional           9
     A     Excellent             8
     B+    Very Good             7
     B     Good                  6
     C+    Competent             5
     C     Fairly Competent      4
     D+    Passing               3
     D     Barely Passing        2
     E     Marginally Failing    1
     F     Failing               0

Click here to read more details on the meaning of grades.


Important dates

First day of classes:            Monday, September 8
Last day to enrol in the course:         September 20
Last day to drop the course:             November 8
Last day of classes:             Friday, December 5
Examination period:              starts  December 8

Assignments

Assignments represent your own individual work. Do not misrepresent another's work as your own; it will be considered academic dishonesty if you do. Some guidelines are given in the ASCII document On Academic Honesty. All students should be familiar with the section on academic honesty in the university calendar. If you have any questions about this please ask your course instructor.

Assignments are to be handed in at the start of class (17:30). Assignments handed in after the start of class, but before the start of the next class, will have two full letter grades deducted (e.g., A becomes C, B+ becomes D+, and C+ or lower becomes F). (The exception to this rule is for Assignment 4, which is due on the last day of class; NO LATE ASSIGNMENT 4s WILL BE ACCEPTED!) After the start of the next class, NO late assignments will be accepted, with the sole exception being if you give your instructor a signed medical note and ask for permission to be late. In this case, you must hand in the medical note and late assignment to your instructor. Please note that events such as last minute printer slowdown or breakdown DO NOT constitute valid excuses for lateness.

Course assignments require you to prepare and hand in reports. These must be readable and, for programming assignments, should be prepared in a manner consistent with the How to do a report as outlined in the laboratory book for COSC1020. If you do not have a copy, please see the course directory /cs/course/1020. The goals for assignments in COSC1030 differ from those in COSC1020, as a result your reports will have a different structure. Follow this link for a general guideline on What is a Report?

We will provide cover sheets for your assignments that you can print. Please include them as the very first page of your report or else you will lose one full letter grade (e.g., A becomes B, C+ becomes D+, and D or lower becomes F). NO BINDERS OR ENVELOPES.

REMEMBER: That in order to receive a passing grade in the course your weighted GPA on each component must be >= 2.00. That is, the weighted GPA on the assignments must be >= 2.00 and the weighted GPA of the midterm and the exam together must be >= 2.00 to pass the course.

Throughout this course and for all assignments the following will be stressed:

Assignments

Assignment 1: Sets and ADTs

Assignment 2: Pointers and ADTs

Assignment 3: Stacks and Simulation

Assignment 4: Trees and Recursion

Reappraising Assignments

If you would like to have an assignment or exam reappraised you must do so within two weeks of it being returned. Note that the entire assignment or exam will be remarked and that your grade may go up or down as a result of being remarked.

Before resubmitting ask yourself if it is worth the time required by yourself, the TA, and the professor. For example, suppose you want an extra mark on a question that is worth 1/8 of the assignment and the assignment is worth 7.5% of the final mark. Then if you get the extra mark, your final GPA will change by 1/8 * 0.075 = 0.01. More over, last term the marks of only two out of approximately 25 resubmissions were increased. This means that the expected change to your GPA is 1/8 * 0.075 * (2/25) = 0.00075. Be sure, however, to determine how to do better on the next assignment.

In order to resubmit an assignment for remarking, you must fill out this form and hand it in along with your assignment.



Midterm test and Final Examination

REMEMBER: That in order to receive a passing grade in the course your weighted GPA on each component must be >= 2.00. That is, you must obtain a weighted GPA of >= 2.00 on the assignments and you must obtain a weighted GPA of >= 2.00 on the exams to pass the course.

Midterm tests and the final examination are closed book.

Example Exams


The Course Newsgroup

The course newsgroup (york.cs.course.1030) is the first place you should look for course-related announcements and for answers to course-related questions. If you are registered in 1030 you should read the newsgroup regularly.

You may read the course newsgroup using your favorite newsreader. Alternatively, you may use your WWW browser to read the group by clicking on the hypertext reference above. Some WWW browsers, like mosaic, require you to set the environment variable NNTPSERVER before reading newsgroups. If you have trouble reading the course newsgroup using your WWW browser, try this

        setenv NNTPSERVER blue.cs.yorku.ca

before starting your browser. Better yet, add this line to your .cshrc file.



The Course Directory

The course directory lives on the Ariel machines and is: /cs/course/1030. You may find the following subdirectories of interest.


Obtaining OOT Software

NOTE: the Computer Science Department and in particular the people in 126 CCB do not provide technical support for versions of Object Oriented Turing (OOT) that run under DOS, Windows, Windows '95 or the MacIntosh Operating System. If you have any problems with your disks, the installation of the software or with the actual software please contact Holt Software Associates Inc.

Holt Software Associates Inc.
203 College St., Suite 305,
Toronto, Ontario, CANADA, M5T 1P9
Phone: (416) 978-6476, 1 (800) 361-8324

Note that the "Computer Science Introductory Handbook" (September, 1995) contains information that should be helpful when installing this software on your machine.

If you purchased the OOT software last term you'll be able to use it for this course. Assignments will be done using OOT.

You can purchase Object Oriented Turing (OOT) at a special price of $35.00 (for disks only). You must know which version you will need BEFORE you purchase your software and after you have puchased your disks you should not bother the people who sold you the disks all problems should be directed to Holt Software Associates.

There are three versions of OOT available:

The software can be purchased in CCB 126 during the first two weeks of classes (starting Sept 8, through Sept 19) and during the following times only:


Other Computer Science Courses