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 2010 Dr. Melissa Danforth Office: Sci III 338, 654-3180 Office Hours: MWF 1:45 - 3:10pm and Tu 3:10 - 4: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 http://moodle.cs.csubak.edu/moodle/course/view.php?id=32 Course meets MWF 12:20pm - 1:40pm, Tu 12:20pm - 3:00pm in Sci III 315 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. 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. Priority in the lab is given to students who are completing assignments for Computer Science courses. Tutoring is also provided on a limited basis in the walk-in lab. A tutoring schedule will be posted on the department website by the end of the first week of classes. Students in this course may ask the tutors for assistance on assignments. The tutors are not allowed to solve the assignment for you, but they can assist with problems like cryptic compiler errors. Grading: Labs/Homework 35% Midterms (2) 20% each, 40% 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 midnight 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 accepted. Late homework will be marked down 10% for every weekday it is late. Weekends (Sat. and Sun.) count as only one day late (e.g. if it is due Fri and you turn it in Sun, it would only be one day late). If there is a notice on the assignment that late homework will not be accepted beyond a certain date, then that is the final day homework will be accepted. Otherwise, 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 GMail, webmail or any other email method as the campus firewall and spam filter may silently reject the email. All assignments MUST be submitted to the instructor's Sleipnir account (melissa@cs.csubak.edu) and not the campus account. Refer to the Lab 1 handout on the course website for instructions on how to use the Computer Science department email. 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 4, 2010 Midterm 2 will be given on Monday November 1, 2010 *** UPDATED *** 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 22, 2010 from 2:00pm to 4:30pm You may arrange to take the final at a different time by emailing or speaking to the instructor.