Overview · Policies and Tips · Schedule · Resources · RamCT

CS161 is designed to introduce students to object-oriented programming by building on the understanding of procedural programming presented in CS160. As in CS160, the course is structured to interleave theory, discrete math, and programming concepts.

The core of the course is an extensive study of the use of Java classes and objects, and use of proof techniques from discrete mathematics in designing and analyzing a method or program.

See below for the required texts. To get a detailed understanding of the course topics, leaf through the core readings from our texts. The core readings from Prichard and Carrano will be, Ch. 3 (recursion), Ch. 4 (Data abstraction and introduction to classes), Ch. 5 (Linked lists and applications), and Ch. 6 (Recursion as a problem-solving technique). If you have the fifth edition of Rosen, the core readings will be Sections 3.1-3.3 (analyzing the efficiency of algorithms), Chapter 4 (mathematical induction and recursion), and 5.1-5.4 (principles of counting). Chapters 4 and 5 of the fifth edition are numbered 5 and 6, respectively, in the sixth edition. We allow either edition because the textbook is expensive and there are used copies of the fifth edition available. Last semester, almost all students used the fifth edition. There will be some reading handouts, and you will find your CS160 text to be a useful reference in this course.

This course is essential for majors and other students who intend to use object-oriented programming to solve problems and who intend to write complex software. The course would be useful to any student intending to pursue Computer Science or Information Technology as a career.

Janet J. Prichard and Frank M. Carrano

Addison-Wesley

Discrete Mathematics and its Applications fifth or sixth edition
(your choice)

Kenneth R. Rosen

McGraw-Hill.

Computer Science Building 466

Office Hours: MWF after class; if you can't make them, you can come to my CS520 office hours, MWF 10:50, CSB 325. You can attend other recitations besides the one you are assigned to, and ask for help from the T.A.

my three initials {AT} @cs.colostate.edu (my middle initial is M)

Office Hours: Mon. 3-5, Wed. 9-11, osheim at-sign rams dot colostate dot edu

Amanda Handler: Room 130, Computer Science Building

Office Hours: Fri. 11-1

Nathan Lighthart: Room 130, Computer Science Building

Office Hours: Fri. 3-5, nlighth1 at-sign rams dot colostate dot edu

- MWF Clark C 248, 2:00-2:50

- M. 11:00-12:40
- W. 11:00-12:40
- W. 4:00-5:40
- Th. 2:00-3:40
- Th. 4:00-5:40
- F. 10:00-11:40

We (the instructor and the GTAs) assume you are familiar with the policies in the student information sheet for the department. The guidelines outlined in these documents will be followed in this course.

I have been asked by the Department to post the Departmental Code of Conduct on this page.

**Copyright © Colorado State University.** All rights reserved.