Dr. Melissa Danforth

Computer and Electrical Engineering and Computer Science Department
California State University, Bakersfield

CSUB Logo
Skip navigation links

Download file viewer

Syllabus
Click on this link to open the Printable Syllabus in a new browser window/tab (Note: The printable syllabus is in plain text format)
Programming Fundamentals
CMPS 221 - Fall 2006
Dr. Melissa Danforth

Office: Sci 403, 654-3180 
Office Hours: MWRF 3:30pm - 5:00pm or by appointment
Email: mdanfor@cs.csubak.edu or mdanforth@csub.edu
Course web site: http://www.cs.csubak.edu/~mdanfor/ under Teaching menu
Course meets MWF 2:00pm - 3:25pm, R 1:00pm - 3:25pm in Sci 414

Course Description:
Introduces the fundamentals of procedural programming. Topics include  
data types, control structures, functions, arrays, and standard and file 
I/O. The mechanics of compiling, linking, running, debugging and testing 
within a particular programming environment are covered. Ethical issues 
and an historical perspective of programming within the context of computer 
science as a discipline are given.

Prerequisite:
Passing score on ELM OR satisfaction of the ELM exemptions AND a passing 
score on the Pre-Calculus Readiness Test (see Class Schedule for details).

Textbook: 
Problem Solving with C++, 6th edition. Walter Savitch. Publisher: Addison 
Wesley, 2007. ISBN 0-321-41269-9.

Note: This is a new edition, just published. It has a different chapter
structure than the 5th edition. Please see the instructor if you have
the 5th edition of the book.

Material Covered:

Chapter 1	Introduction to Computers and C++ Programming
Chapter 2	C++ Basics
Chapter 3	More Flow Control
Chapter 4	Procedural Abstraction and Functions That Return a Value
Chapter 5	Functions for All Subtasks
Chapter 6	I/O Streams as an Introduction to Objects and Classes
Chapter 7	Introduction to Arrays
Chapter 8	Strings and Vectors (8.1)
Chapter 9	Pointers and Dynamic Arrays (9.1)
Chapter 10	Defining Classes (10.1, 10.2)
Chapter 12	Seperate Compilation and Namespaces (introduction)

Attendance:
Students are responsible for their own attendance. The topics covered
in lecture will be listed on the course website. Lab attendance is not 
required but is strongly encouraged.

Academic Integrity Policy: 
Homeworks and labs may be worked on and discussed in groups. If the 
assignment is a group assignment, the group can turn in one assignment
for the entire group. If the assignment is an individual assignment, 
each student must turn in their own code; no direct copying is allowed. 
Refer to the Academic Integrity policy printed in the campus catalog 
and class schedule.

Computer Lab:
The computer lab in Sci 409 is available for use by students in this 
course outside of class time on a first come, first serve basis. Computer 
Science department tutors will be available to assist with assignments 
in 409. Refer to the tutoring schedule posted on the door for times.

Grading:	Labs/Homework	25%
		Midterms (2)	25% each, 50% total
		Final		25%

Labs:
Lab assignments will be posted on the course website. Labs are worth 10 
points and usually involving writing 1-2 short programs. The labs are due 
at 5pm on the day of the lab. Partial credit will be given for incomplete 
labs. Late labs will not be accepted. The lowest lab grade will not be 
counted towards the overall lab grade.

Homework:
Homework assignments and due dates will be posted on the course website. 
Homeworks are worth 20 points and consist of multiple small programs. 
Programs which do not compile may be given partial credit depending on 
the severity of the error. Late homework will be marked down 10% for 
every weekday it is late. Weekends (Sat. and Sun.) count as only one day 
late. Assignments more than three days late will not be accepted.

Labs/Homework Submission:
Assignments are submitted by emailing the instructor all assignment code
files from the Computer Science department server. Do not use RunnerMail 
or any other email method.  Refer to the Lab 1 handout on the course 
website for instructions. If you believe you submitted the assignment on 
time but the instructor has not received the email, contact the instructor.

Midterms: 
Midterm 1 will be given on Monday October 9, 2006 and Midterm 2 will be
given on Monday October 30, 2006. Makeup midterms will not be given, but 
the other midterm will be counted proportionally higher if you have a 
valid reason for missing a midterm. 

Final: 
Monday November 27, 2006 from 2:00pm to 4:30pm in Sci 414