CSC 161.02 Grinnell College Fall 2018
Scribbler 2
CSC 161.02:
Imperative Problem Solving and Memory Management
Scribbler 2
Course Home References Course Details: Syllabus, Schedule, Deadlines, Topic organization MyroC Documentation Project Scope/
Acknowledgments

Note: Although this course is well-developed and tested, be prepared for adjustments in some details as the semester progresses.

Tentative Course Schedule

As the semester evolves, expect changes in details of this schedule. Although substantial changes are unlikely, adjustments may reflect successes and challenges of students in the class.
MondayWednesdayFriday
Aug 27
New Student Orientation
Aug 29
Class Registration
Aug 31
module 000: Course Overview
module 000: Linux/Mac OS X Basics
Sep 03
module 000: Linux/Mac OS X Basics
module 000: C Basics
Sep 05
Quiz 1
module 000: C Basics
module 000: More C and eSpeak and Makefiles
Sep 07
module 000: MyroC, the Scribbler 2, and Basic Input
Sep 10
module 000: Intro. to Prog. Org.
module 000: Song Program Project (required)
Sep 12
Quiz 2
module 001: Elements of C
module 001: Types and Variables
Sep 14
module 001: Conditionals with the Scribbler 2
Sep 17
module 001: Loops and Scribbler 2 Motion
Due: module 000: Song Program Project
Sep 19
Quiz 3
module 001: Simulations and More Prog. Mgmt.: Functions, Assertions
module 001: Robot Actions Project (Due date 9/26) (required)
Sep 21
Due: Supplemental Problem 1
module 001: Robot Actions Project (Due date 9/26) (required)
Sep 24
module 010: Overview: Functions and Arrays
module 010: Run-time Stack
Sep 26
Quiz 4
module 010: Functions with Address Parameters (required)
Due: module 001: Robot Actions Project (Due date 9/26)
Sep 28
module 010: Arrays
Oct 01
module 010: More Functions, Correctness, Testing
Due: module 010: Functions with Address Parameters
Oct 03
Quiz 5
module 010: Uninterpretable Dance Project (required)
Oct 05
Due: Supplemental Problem 2
unit: Representation of Numbers
unit: Integer Representation (Extra Credit)
Oct 08
unit: Floating-point Representation (required)
Oct 10
Quiz 6
unit: Data Consequences and the gdb Debugger
unit: Machine-level ops (Optional)
Due: module 010: Uninterpretable Dance Project
Oct 12
module 011: String, I/O Overview
module 011: Characters and Strings
Oct 15
module 011: Data input with scanf
module 011: Character-by-character I/O
Due: unit: Floating-point Representation
Oct 17
module 011: Robot Command Project (required)
Oct 19
Mid-semester Test
Oct 22
Fall Break
Oct 24
Fall Break
Oct 26
Fall Break
Oct 29
module 100: Grouping Data
module 100: Structs
Oct 31
Quiz 7
module 100: 2D arrays (required)
Due: module 011: Robot Command Project
Nov 02
Due: Supplemental Problem 3
module 100: Image Storage/Processing (Extra Credit)
Nov 05
module 100: Insertion Sort
Due: module 100: 2D arrays
Nov 07
Quiz 8
module 100: Image Processing Project (required)
Nov 09
module 101: Dynamic Memory Overview
module 101: Memory Allocation and Pointers
Nov 12
module 101: Scheme-like Lists
Due: module 100: Image Processing Project
Nov 14
Quiz 9
module 101: Linked-lists in C (required)
Nov 16
Due: Supplemental Problem 4
module 101: Lists for a Movie
Nov 19
module 101: Program Mgmt (required)
Due: module 101: Linked-lists in C
Nov 21
Quiz 10
module 110: ADTs
module 110: Stacks
Nov 23
Thanksgiving Break
Nov 26
module 110: Stacks
module 110: Queues (required)
Nov 28
Quiz 11
module 110: Queues (required)
Due: module 101: Program Mgmt
Nov 30
module 110: Bash Scripts (Extra Credit)
Dec 03
module 110: Experiments with Stack Implementations (required)
Due: module 110: Queues
Dec 05
module 111: Command-line and Files
module 111: Command-line
Dec 07
Due: Supplemental Problem 5
module 111: File I/O
Dec 10
module 111: More File I/O (Optional) (Extra Credit)
module 111: Robot Parade (required)
Due: module 110: Experiments with Stack Implementations
Dec 12
module 111: Robot Parade (required)
Dec 14
Last day of classes
Due: module 111: Robot Parade