CPSC 122 - Computer Science

advertisement
CPSC 122
COMPUTER SCIENCE II
Time and Place: TR 2:10 - 325, PACCAR 005
Prerequisite: CPSC 121 (or the equivalent)
Textbook: Walls and Mirrors (Carrano), Starting our with C++ (Gaddis & Krupnow)
Final: Thursday, 5/7, 10:30-12:30
Overview
In CPSC 122 you will learn to write recursive programs, manipulate pointers, and use advanced C++
techniques. You will make use of these as you study basic data structures like lists, stack, and queues.
CPSC 122 is a significant leap beyond CPSC 121. If you had fun in CPSC 121, you'll have more fun in
CPSC 122.
Here are the topics:









Pointers (Chapter 8, Gaddis & Krupnow)
Classes (Chapter 12, Gaddis & Krupnow)
Recursion (Chapter 2, Carrano)
Data Abstraction (Chapter 3, Carrano)
Linked Lists (Chapter 4, Carrano)
Stacks (Chapter 6, Carrano)
Queues (Chapter 7, Carrano)
Advanced C++ Topics (Chapter 8, Carrano)
Recursion (Chapter 5, Carrano) (and if time permits)
Assignments
Just as you learn to swim by swimming, you learn to program by programming. The lectures and text
give you a start, but you won't get it unless you do it. The programming assignments are the most
important part of the course. It is essential that you work out these assignments yourself. You may, of
course, exchange ideas with others about how to do them. You may also ask others to help you figure
out what is wrong with your program. But in the end, you must design, enter, run and fix each program
yourself. The assignments are not to be done jointly. To copy the work of another is both dishonest and
not in your interest. First, you will miss one of the real pleasures this side of heaven: the joy of seeing
your program run. Second, you won't learn anything. Third (if points one and two are not enough) I'll
probably catch you. This is bad. The consequences will make you unhappy and introduce unwelcome
aggravation into my life. See page 37 of the Undergraduate Catalog for a complete description of the
unpleasantries.
Always, always, always allow more time, lots more time, to complete an assignment than what you
think is necessary. Because what you think will always be wrong. Ten years in the computer industry
followed by many years as a professor have taught me this. The assignments for CPSC 122 will require
lots and lots of hours. This is a joy for most of us. If it sounds horrible to you, give it a chance.
I'll expect to receive assignments by midnight on the due date, unless you come see me at least two days
in advance. If you're having trouble, come to my office. I'll always help. If you show me that you've
really put effort into an assignment, I'll always give you an extension if you need one.
Your programs must compile using GNU C++ compiler. If you write your program using a C++
development system on another machine, say Visual C++ on a Windows machine, you must allow time
to transfer it, test it, and possibly adjust it, so that it runs on grace.
Certification
Gonzaga University awards degrees. These degrees are the University's assurance to the larger
community that each holder has a broad educational background and specific competence in a major
area. In short, I must grade you. Your grade for the course will be based on three exams, six or seven
programming assignments, and class participation. Here are the details:

Exams: 48% of the grade.

Assignments: 40% of the grade. You may help one another, but the substantive portion of your
work must be your own.

Class Participation/Attendance: 12%. An easy to way to get a better grade is to come to class.
First, you'll learn more and probably do better on programs and exams. Second, attendance is
worth 12% of your grade. You receive the full 12% if you attend every lecture. You receive 3%
less for each missed class up to four. I will follow University policy if you miss more than four
classes (see p. 38, Undergraduate Catalog).
I use this scale:
A 94 - 100
A- 90 - 93
B+ 87 - 89
B 84 - 86
B- 80 - 83
C+ 75 - 79
C 65 - 74
C- 60 - 64
D+ 55 - 59
D 50 - 54
F < 50
I will compute a running grade and post it on the Blackboard site for this course:
http://blackboard.gonzaga.edu
Disability Support
I am committed to adapting this course to the needs of students with disabilities. If you need an
accommodation, come see me as soon as possible. We can discuss the course format, anticipate your
needs and explore potential accommodations. I rely on Disabilities Resources, Education and Access
Management (Foley, 2nd Floor, extension 4134) to develop accommodation strategies. If you have not
previously visited this office, I ask you to do so. I am happy to implement any plan that you work out
with that office.
Download