CS12: Introduction to Computer Science for Science, Math, and Engineering

Fall 2001

Class meets on TR 12:40 -- 2:00 in 1500 LFSC

Instructor:

Deganit Armon

Office:

341 SURGE

Office Hours:

W 11-2

Phone:

787-2604

E-mail:

deganit@cs.ucr.edu

TAs

E-mail

Office

Office Hours

Jessica Lin

jessica@cs.ucr.edu

SURGE 282

M 2-3, TR 5-6

Stephanie Kang

skang@cs.ucr.edu

SURGE 283

F 2-5

Tiegang Cao

tcao@cs.ucr.edu

SURGE 282

M 4-6, W 3-4

Kun Yan

kyan@cs.ucr.edu

SURGE 282

F 2-5

Li Zhou

lzhou@cs.ucr.edu

SURGE 282

W 8-11

Nikhil Aggarwal

nikhil@cs.ucr.edu

SURGE 282


TW 2-3:30



Text

Deitel & Deitel / C++ How to Program.

Topics

This course is a continuation of CS10 and will explore more complex programming issues. A grade of C- or better in CS10 is a prerequisite for this course. Topics covered will include object-oriented program design, user defined types and C++ classes, operator overloading, virtual functions, friends, inheritance, templates, the Standard Template Library, functions and recursion, dynamic data allocation and pointers, not necessarily in this order. The course will also include an introduction to Unix and makefiles. At least one project and one lab will have to be completed in the Unix environment.

Grading
Programming projects: 45%
Labs: 20%
Midterm: 15%
Final: 20%

Grading is on a straight curve (A 90% and above, B 80-89%, C 70-79%, D 60-69%, F below 60%). Please note that projects make up 45% of the grade. This means it is not possible to pass the class without doing the projects, even if you ace the tests. The final is comprehensive, with more emphasis on the second half of the course.

Each student will be assigned a random code, which will be mailed to your account. Grades will be posted to the website, as they become available, sorted by this code. This way you can not only see your own grade, but also compare your progress with the rest of the class.

All course material will be posted to the class website. Labs and programming assignments are turned in and graded electronically. A fine introduction to the environment, including detailed instruction on electronic turnin can be found at www.cs.ucr.edu/~klick . Labs are due at the end of the lab period and will not be accepted late. Labs are designed to be completed in under three hours. However, lab assignments will be posted at the beginning of each week to allow extra time to work on them, should you feel this is necessary. Programming assignments are due on the date and time given on the assignment sheet. No late assignments will be accepted, but partial credit will be given for partially complete projects. Extra credit opportunities will abound, in labs, assignments and on tests.