CIS 122 Algorithms and Programs in C++
Syllabus, Spring '03
CRN 31085
14-15:20 UH, 207 Cha

Instructor: Michael Hennessy
michaelh@cs.uoregon.edu, 145 Deschutes Hall, 346-3487.
Instructor and GTF Office Hours.

Course Goals

CIS 122 is an introduction to algorithmic problem solving and object-oriented programming using the C/C++ programming language. CIS 122 builds upon the concepts and applications presented in CIS 110 (IT and web development tools).

You will need your username and password for your gladstone account in your week 1 lab. See MicroHelp (151 McK) for questions about your account.

The course is intended for students with no prior programming experience in any language. Prerequisites: Mth 111, CIS 110.

For students who did not take CIS 110 at the University of Oregon, please see CIS 110 Course-Equivalency for CIS 122, below.

122 labs start week 1 and meet in the PC-lab, 101 McK. In addition to 101 Mck, you can also work in 013 Kla and O26 Kla. CS Consultants are available during certain hours in 013 Kla.

Required Text

Hennefeld, Baker and Burchard. Using C++: An Introduction to Programming (Prentice-Hall). A copy will be on reserve at the Science library.

It's a good idea to write your name (or some coded identifier) in your textbooks, as it is their free telephone call home when they get lost.

C/C++ Development Environments

The 122 labs meet once a week in a PC-lab, 101 McK. There you will learn how to use the Unix/C++/Emacs environment on gladstone. You must have an active gladstone account and a working username and password before you go to your first 122 lab in week 1. Note that the same development environment can be accessed from your home computer using modem, DSL, etc., so you can work on your 122 projects from home.

Learning Unix/Emacs is a course requirement, but you may use any C++ development environment to solve your homework problems outside of lab.

Course Requirements

8 Programming Projects ...  50%
5 Quizzes ................  50%
Note that the five quizzes replace both the midterm and the final exam.

The formula to compute your final percentage for the course: pct = 100 * (0.5 * YourTtlProjPts/800 + 0.5 * YourTtlQuizPts/300) Keep backup copies of all your projects on gladstone until your final grade is completely resolved. This can make the difference between passing and failing the course.

Quiz dates are on the course outline. Please mark your calendar now, as a missed quiz is a zero.

Things You Need to Know

CIS 110 Equivalency for 122

You have satisfied the 110 pre-req if you have taken a course (or courses) in which you studied all of the following topics covered in CIS 110.
  1. Unix for Web Development: basic Unix commands, as covered in sections 1-6 of this UNIX Tutorial for Beginners from the University of Surrey, UK. (ls, cd, rm, mv, mkdir, chmod, ...)
  2. Information Technology (IT) Concepts: hardware, software, data representation, networks and protocols (TCP/IP, HTTP).
  3. Office Applications: word processor, spreadsheet.

Note: CIT minors must petition to waive the CIS 110 requirement. See CIS/CIT undergraduate coordinator Cheri Smith, 120 Deschutes, for details.