CSC 161 | Grinnell College | Spring, 2015 |
Imperative Problem Solving and Data Structures | ||
Monday | Tuesday | Wednesday | Friday |
---|---|---|---|
January 19 Luther King Day | January 20 Introduction Problem-Solving Process Module 000: Linux Intro. Linux Examples | January 21 Module 000: Linux Basics Laboratory Exercise: Terminal window, emacs Setting up .bashrc, Makefile commands: mkdir, cd, ls, mv, cp Help, printing | January 23 Module 000: Intro. to C Overview of C Syntax, compiling, running Laboratory Exercise: Getting Started with C |
January 26 Module 000: More Intro. C Laboratory Exercise C Examples eSpeak More Linux Capabilities | January 27 Module 000: Programming the Scribbler 2 Laboratory Exercise Scribbler 2: connect, disconnect, sound | January 28 Module 000: Project [Required] Program a Song | January 30 Module 001: Examples |
February 2 Module 001: Types, variables Laboratory Exercise Casting Due: Module 000 Project | February 3 Module 001: Conditionals Laboratory Exercise Scribbler 2: Motion, Sensors | February 4 Module 001: Loops [Extra Credit] Laboratory Exercise Loops Scribbler 2 Movement | February 6 Module 001: Project [Required] Song and Dance Due: Supp. Problem 1 |
February 9 Module 010: Examples Functions with parameters Passing values and addresses as parameters Use of Scribbler 2 sensors | February 10 Module 010: functions Laboratory Exercise Functions with, w/o parameters Passing value as parameters void functions | February 11 Module 010: functions with value parameters, continued More examples Clarify/review Introduction to passing address as parameters Start Laboratory Exercise More functions | February 13 Module 010: more functions Laboratory Exercise Values and addresses as parameters Due: Module 001 Project |
February 16 Module 010: one-dim. arrays Laboratory Exercise 1-dimensional arrays Functions with arrays | February 17 Module 010: functions, testing Laboratory Exercise Function pointers Testing More values and addresses as parameters Due: Supp. Problem 2 | February 18 Module 010: Project [Required] Follow a moving object [Deadline: Ex. Cr. Lab on Loops] | February 20 Representation of Numbers binary integers sign/magnitude, ones complement twos complement |
February 23 Data Representation [Extra Credit] Laboratory Exercise Integer representation Non-negatives Sign-magnitude notation Ones- and twos-complement Due: Module 010 Project | February 24 Data Representation [Required] Laboratory Exercise Floating-point numbers Roundoff errors Numerical errors | February 25 Machine-level Explorations Machine-level operations Bitwise operations Unions Debugging with GDB | February 27 Module 011: Examples characters strings Due: Floating-Point Lab |
March 2 Module 011: characters & strings Laboratory Exercise | March 3 Module 011: Input with scanf Laboratory Exercise Formatted input: scanf | March 4 Module 011: Character-by-character input and output[Required] Laboratory Exercise Character-by-character input/output: getchar, putchar Formatted output: printf | March 6 Hour Test 1 |
March 9 Module 011: Project [Required], Continued Robot follows interactive commands [Deadline: Ex. Cr. Lab on Integer Representation] | March 10 Module 100: Grouping Data Introduction, Examples structs 2D arrays Due: Lab on Character-by-character input and output | March 11 Module 100: structs Laboratory Exercise: structs | March 13 Module 100: Two-Dim. Arrays Laboratory Exercise 2D arrays Due: Module 011 Project |
March 16 Spring Break | March 17 Spring Break | March 18 Spring Break | March 20 Spring Break |
March 23 Spring Break | March 24 Spring Break | March 25 Spring Break | March 27 Spring Break |
March 30 Module 100: Transforming Pictures[Extra Credit] Laboratory Exercise Processing pixels in a picture | March 31 Module 100: Insertion Sort Laboratory Exercise | April 1 Module 100: Project [Required] Picture Transformation | April 3 Module 101: Examples Due: Supp. Problem 3 |
April 6 Module 101: Pointers Laboratory Exercise | April 7 Module 101: Scheme-like Lists Getting started Examples Due: Module 100 Project | April 8 Module 101: Linked Lists [required] Laboratory Exercise | April 10 Module 101: Linked Lists for a Movie [Extra Credit] Laboratory Exercise |
April 13 Module 101: Program Mgmt. [Extra Credit] Laboratory Exercise [Deadline: Ex. Cr. Lab on Transforming Pictures] | April 14 Module 101: Project [Required] Music composition Due: Linked Lists | April 15 Module 101: Project, Continued [Required] Music composition | April 17 Module 110: Examples Stacks Queues Due: Module 101 Project |
April 20 Module 110: Stacks Laboratory Exercise Due: Supp. Problem 4 | April 21 Module 110: Queues - arrays [Required] Laboratory Exercise | April 22 Hour Test 2 | April 24 Module 110: Queues - lists [required] Laboratory Exercise Lab continued |
April 27 Module 110: Bash scripts [Extra Credit] Laboratory Exercise use with testing | April 28 Module 110: Project [required] Stack implementations [Deadline: Ex. Cr. Lab on Program Management] Due: Queues' Lab (both list and queue implementations) | April 29 Module 111: Comm.-line Args Laboratory Exercise | May 1 Module 111: Files Laboratory Exercise read and write to files Due: Module 110 Project |
May 4 Module 111: Files Laboratory Exercise Processing file data | May 5 Module 111: Project [required] robot motion with logging Due: Supp. Problem 5 | May 6 Module 111: Project [required] robot motion with logging | May 8 Semester Wrap-Up Questions, Review End-of-course evaluations Due: Module 111 Project [5:00 pm Deadline: All Ex. Cr. Labs and Supplemental Problems] Absolute deadline for all course work: 5:00 pm |