Butte College Spring 2017
Course Information
Course #/Control #: CSCI 20−6749
Course title: Programming and Algorithms I
Course description: This course is an introduction to the discipline of computer science, with a focus on the design and implementation of algorithms to solve simple problems using a high-level programming language. Topics include fundamental programming constructs, problem-solving strategies, debugging techniques, declaration models, and an overview of procedural and object-oriented programming languages. Students will learn to design, implement, test, and debug algorithms using pseudocode and a high-level programming language. (C-ID COMP 122).
Recommended Preparation: CSCI 4: Introduction to Programming or the equivalent
Student Learning Outcomes: Upon the satisfactory completion of this course, the student will be able to:
  1. Design, implement, test, and debug computer programs using basic computation, simple Input/Output (I/O), standard conditional and iterative structures, and functions.
  2. Use pseudocode and a high-level programming language to implement, test, and debug algorithms that solve simple problems.
  3. Summarize the evolution of programming languages and describe how this evolution has led to the programming paradigms in use today.
  4. Identify and demonstrate different forms of variable binding, visibility, scoping, and lifetime management.
Class meeting time/place: MW 12:00-2:15pm, MC 146
Course web page: http://foobt.net/spring2017/csci20_6749
Instructor Information
Instructor name: Boyd Trolinger
Office: MC 152
Office hours: MW 11:15am-12:00pm, MC 152; by appointment
Email: jboydt@foobt.net
Course Materials
Reading: Stanley B. Lippman, et al., "C++ Primer"
Course Requirements
Assigned reading: Readings will be assigned during the course of the semester to reinforce lecture material.
Book learning challenges: Students will complete and submit a book learning challenge on Monday of each week. Book learning challenges will be posted on the course website and will require that students use the assigned readings and conduct independent research to successfully complete. Book learning challenges must be printed and submitted in hard-copy before the end of the class period on their due date (the printout must be time stamped no later than 2:15pm). No late work and no submissions by email will be accepted, for any reason.
Programming challenges: Students will complete and submit a programming challenge on Wednesday of each week. Programming challenges will be posted on the course website. Programming challenges must be submitted by email to jboydt@foobt.net before the end of the class period on their due date (the email must be time stamped no later than 2:15pm). No late work will be accepted, for any reason.
Programming projects: Students will complete and submit three (3) programming projects over the course of the semester. Successful completion of programming projects will require that students spend a significant amount of time outside of class writing and testing code and applications, and managing time to make steady and constant progress. Programming projects must be submitted by email to jboydt@foobt.net by midnight on their due date (the email must be time stamped no later than 12:00am). Late submission of programming projects will be docked fifty (50) points for each 24−hour period that passes after the deadline, starting at 12:01am.
Final challenge: There will be a final challenge on the day of the scheduled final exam for this course. The final challenge will consist of elements of both book learning challenges and programming challenges.
Late work: Late work will not be accepted for book learning challenges or programming challenges for any reason. Programming projects may be turned in past the deadline date, but will be docked fifty (50) points per 24−hour period, as described above.
Participation/Drop policy: Regular attendance and active participation in this course is a requirement. The best learning environment for everyone is created when all students are present and engaged in the material. Any student who misses more than four (4) class meetings or four (4) assignments in a row (whichever comes first) will be dropped from the course. PLEASE NOTE: arriving late for class will be counted as an absence.
Computing your semester grade All semester grades are computed as the percentage of points you earned against the total possible points. Letter grades are awarded as follows -- A (90%), B (80%), C (70%), D (60%), F (below 60%). The levels below are provided as a rough guideline of your progress in the class and should not be considered the final determination of your grade.
Earning levels and grades: Level 10 (A*), 4750 pts and higher (!C++ PRO!)
Level 9 (A), 4500 pts and higher
Level 8 (B), 4000 pts and higher
Level 7 (C), 3500 pts and higher
Level 6 (D), 3000 pts and higher
Level 5, 2500 pts and higher (Level 5 and below earn F)
Level 4, 2000 pts and higher
Level 3, 1500 pts and higher
Level 2, 1000 pts and higher
Level 1, 500 pts and higher
Level 0, below 500 points
Earning points: Book learning challenges - 14 @ 100 pts each, max 1400 pts
Programming challenges - 15 @ 100 pts each, max 1500 pts
Programming projects - 3 @ 500 pts each, max 1500
Final challenge - 600 pts
Miscellaneous Information
A course outline is on file in the department office. If a student would like to have a copy, please request one from the instructor.
The Center for Academic Success (CAS) provides academic support services to Butte College students. It is located inside the Learning Resource Center on main campus, in CHC 230 and 231 at the Chico Center, and in GCC 104 at the Glenn County Center. Hours for CAS at the Chico Center are Monday and Tuesday 8:00 a.m. to 5:00 p.m., Wednesday 12:00 p.m. to 8:30 p.m., Thursday 1:00 p.m. to 5:00 p.m. and Friday 8:00 a.m. to 11:30 a.m. CAS at the Glenn County Center is open Thursday mornings. Free services include Tutoring, Computer Labs, Workshops, Group Study Rooms on main campus, and TIP Sheets.  Students may take a Critical Skills for College Success ½-unit course through CAS. For more information, go to http://butte.edu/cas.