|CSC 161||Grinnell College||Fall, 2013|
|Imperative Problem Solving and Data Structures|
|Module||Dates||Overall Purpose||Summary and Main Topics||Examples||Lab Exercises||Project Theme|
|000 (module details)||Friday, August 30 — Tuesday, September 10||Introduction: Play a
This module helps CSC161 students to gain familiarity with foundational concepts of C programming, the Scribbler robot, and the Linux terminal.
|Basics of Linux and C
||Program a song|
|001 (module details)||Wednesday, September 11 — Friday, September 20||Motion (+song, motion)
This module introduces and explores the possibilities that are offered by loops and conditionals. These capabilities are applied to controlling a robot that creates sounds and moves simultaneously.
||Make the robot dance and sing|
|Friday, September 27||Hour Test 1|
|010 (module details)||Monday, September 23 — Wednesday, October 2||Motion and sensors
This module expands the CSC161 students' working knowledge of C language, improves problem solving and creativity, and creates an introduction to more complex programming.
|functions and arrays
||Follow a moving object|
|Friday, October 4 — Tuesday, October 8||Data representation||Representation of numbers
|Wednesday, October 16||Hour Test 2|
|011 (module details)||Wednesday, October 9 — Monday, October 28||Deepen understanding of
imperative problem solving and C
The purpose of this module is to deepen understanding of the C language and smoothly integrate previous experience in the course into the larger framework of programming in C.
||Robot follows typed commands|
|100 (module details)||Tuesday, October 29 — Wednesday, November 6||Image Processing
The purpose of this module is to introduce the customizable nature of self-written programs by using structs and 2-dimensional arrays.
||Transform a Picture|
|101 (module details)||Friday, November 8 — Tuesday, November 19||Music Composition
This module introduces dynamic data structures (with pointers and linked lists) as a means to store lines of music that evolve through the composition process.
|Dynamic data storage
||Music composition --- insertion of series of notes periodically into song tune|
|Wednesday, November 20||Hour Test 3|
|110 (module details)||Friday, November 22 — Monday, December 2||Storage/retrieval Patterns
This module increases familiarity with programming in C, integrates the Scribbler 2's sensors into the curriculum, and continues to practice previously-introduced concepts
|The purpose of this module is to clarify previously
introduced concepts, such as
||Do something interesting with pictures or travel in a maze|
|111 (module details)||Tuesday, December 3 — Friday, December 13||Integrated Robotics
This module integrates and reviews material that has been presented through the semester, with a particular emphasis on C programming concepts and full usage of the Scribbler robot.
||Robot motion with logging|