UCR CS 12: Introduction to Computer Science II

Fall Quarter 2003: September 22, 2003 - December 13, 2003


Lecture Schedule
Lab Schedule

Current Grades
Exam Schedule

Coding Style Guide
Electronic Turn-in
Course Email List

Anonymously Report Suspected Cheating
Anonymously Provide Comments/Suggestions

FAQ page
Previous CS12 Offerings

Overview

In CS 12, you'll learn to solve larger programming problems and will also touch on some of the deeper concepts underlying Computer Science. Hopefully you'll also have fun too!

Catalog description: CS 12. Introduction to Computer Science for Science, Mathematics, and Engineering II. (4) Lecture, three hours; laboratory, three hours. Prerequisite(s): CS 10 with a grade of "C-" or better; familiarity with C or C++ language. Structured and object-oriented programming in C++, emphasizing good programming principles and development of substantial programs. Topics include recursion, pointers, linked lists, abstract data types, and libraries. Also covers software engineering principles.

Note: students receiving less than a C- in the CS 10 prerequisite will be dropped automatically a few weeks into the quarter.

Basic information

Instructor: Wagner Truppel (wagner@cs.ucr.edu, Surge 340)

Office hours:
by appointment only, requested by email, and not guaranteed unless you receive a confirmation reply.
Teaching Assistants: David Sheldon (dsheldon@cs.ucr.edu)

Office hours:
Tue 3:30pm - 4:30pm

Thomas Repantis (trep@cs.ucr.edu)

Office hours:
Thu 10am - 11am

Nan Xiao (nxiao@cs.ucr.edu)

Office hours:
Wed 10am - 11am

Guobiao Mei (gmei@cs.ucr.edu)

Office hours:
Mon 1pm - 2pm

TA office hours held in Surge 282.
Lectures: Section 001: Tue & Thu 11:10pm-12:30pm Sproul 1340
Section 002: Tue & Thu 12:40pm-2:00pm Olmsted 1212
Labs: Section 021: Tue 8:10am-11:00am Surge 171
Section 023: Wed 2:10pm-5:00pm Surge 283
Section 026: Mon 6:10pm-9:00pm Surge 171
Section 028: Fri 6:10pm-9:00pm Surge 171

Lab attendance is required. Attendance will be taken at the beginning and end of every lab section, and points awarded accordingly. During lab sections, you are expected to be working on material related to this course.
Textbook: Problem Solving With C++, W. Savitch, 4th ed., 2003 Addison-Wesley.

Please consult the errata pages for the book because there are always errors and typos in every book. In addition, you might want to download the book's PowerPoint slides and code samples. The errata, slides, and code samples are all available for download from the book's web page.

For optional books, visit the Additional Resources section below.

Extra (Optional) Readings:
In addition to the required readings, I've made available photocopies of certain book chapters which I believe have clear presentations of some of the material to be covered in the course. This is not mandatory reading. This extra material is accessible from the UCR Printing and Reprographics Office on campus, next to the UCR Bookstore's entrance. Just ask for the CS 12 Readings.
Course Email List: CS 12 mailing List (send mail now or access the archive): Be sure to sign up to receive important announcements and other information. You must use your CS or EE account, or else some other UCR account, so be sure to learn how to read those accounts or at least automatically forward messages to your personal email address (just create in your home directory a file named ".forward" containing your personal email address). Assessment Schedule: Home Programming Assignments: turned in electronically by 8 pm on Sundays, unless otherwise noted by the instructor.

Quizzes: almost every Tuesday, at the beginning of the lecture. There may also be pop quizzes at any time.

Midterm: Thursday, October 30, during that day's lecture.

Final: (to be held in the same classroom where the lectures take place)
Section 001: Thursday, December 11, 11:30am - 2:30pm
Section 002: Tuesday, December 9, 3:00pm - 6:00pm
Course Grading: Letter grades will be assigned roughly according to the standard 90/80/70/60 scale out of 100 percentage points overall, with a 90 and above corresponding to an A, 80 and above to a B, 70 and above to a C, 60 and above to a D, and less than 60 to an F. +/- grades will be given out as appropriate. A+'s will be given to students in the high 90's who also have turned in all required material and many of the challenge in-lab exercises. The course is divided into two grading components, combined as a weighted sum to total 100 points: To ensure minimum competency in successive courses requiring a C- or better in this course, a C- minimum in both components is necessary to achieve a C- minimum for the final course grade, regardless of the components' weighted sum; otherwise, the final course grade will be no greater than a D+. For example, a B in the lab component and a D in the lecture component might yield a weighted sum of a C, but would instead result in a final course grade of D+. A C- in either component corresponds to roughly 70% of the total points for that component. Approximate Time Requirements: This is a four-unit CS course. As such, you should expect to spend the following approximate amount of time (double these estimates for summer session offerings):

3 hours/week attending the lectures.
3 hours/week attending the lab sessions.
6 to 10 hours/week doing individual study (readings, homeworks, programming, lab preparation, etc).

Please do not underestimate the time you will need to spend on this course. These are real time amounts spent by average successful past students. Computer Science and Engineering are challenging disciplines requiring extensive time to master.

Lecture schedule

Subject to change as the quarter progresses.

Please note that even though almost all the chapters in the textbook will be covered in the lectures, only a few of those will be covered with the level of detail presented in the book. Therefore, it's crucial that you read the book as we go along.

Do not put off reading the assignments or you will risk falling behind. Reading ahead is one of the most effective ways of doing better in class -- you'll be amazed how much more comprehensible and useful the lectures will be.

Lab schedule

Subject to change as the quarter progresses.

General course features and policies (please read these carefully)

Lab Guidelines (please read these carefully)


Additional Resources


© 2003 UC Riverside Department of Computer Science & Engineering. All rights reserved.