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 2008 Dr. Melissa Danforth Office: Sci III 338, 654-3180 Office Hours: MTuWF 1:45pm - 3:00pm (or by appointment) Email: melissa@cs.csub.edu or mdanforth@csub.edu Course web site: http://www.cs.csubak.edu/~mdanfor/ under Teaching menu Course meets MWF 10:55am - 12:15pm, Tu 9:30am - 12:15pm in Sci III 311 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: Starting Out with C++: From Control Structures through Objects, 6th edition. Tony Gaddis. Publisher: Addison Wesley, 2009. ISBN: 0-321-54588-5. Note: This is a new textbook that has not previously been used on campus. If you have a textbook from a prior quarter, please come see the instructor. Material Covered: Chapter 1 Introduction to Computers and Programming Chapter 2 Introduction to C++ Chapter 3 Expressions and Interactivity Chapter 4 Making Decisions Chapter 5 Looping Chapter 6 Functions Chapter 7 Arrays Chapter 8 Searching and Sorting Arrays Chapter 9 Pointers Chapter 10 Characters, Strings and the string Class Chapter 11 Structured Data Chapter 13 Introduction to Classes 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 walk-in computer lab in Sci III 324 is available for use by students in this course outside of class time on a first come, first serve basis. 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 13, 2008. Midterm 2 will be given on Monday November 3, 2008. 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 24, 2008 from 11:00am to 1:30pm.