CS 111: Introduction to Computer Science

Fall 2022, Instructors: Nancy Fulda (Sections 1-6), Brett Decker (Sections 7-12)

Week Date Lecture Textbook Lab & Discussion Links Homework & Project
1 Mon
8/29
Welcome!
    Lab 00: Getting Started
    Due Wed 8/31 ==> NEW Fri 9/2
    Wed
    8/31
    Functions
    Disc 00: Getting Started
    Fri
    9/2
    Global and Local Frames
    HW 01: Control
    Due Thu 9/8
    2 Mon
    9/5
    No Class - Labor Day Section: How to Debug
    Wed
    9/7
    Control
    Lab 01: Variables & Functions, Control
    Due Fri 9/9
    Fri
    9/9
    While loops and Prime Factors exercise
    3 Mon
    9/12
    Higher-Order Functions
    Disc 01: Control, Environment Diagrams
    Hog
    Checkpt Fri 9/16
    Due Fri 9/23
    Wed
    9/14
    Environments
    Lab 02: Higher-Order Functions, Lambda Expressions
    Due Fri 9/16
    HW 02: Higher-Order Functions
    Due Tues 9/20
    Fri
    9/16
    Design
      4 Mon
      9/19
      Function Examples
      Disc 02: Higher-Order Functions, Self Reference
      Disc 03: Recursion
      Wed
      9/21
      Recursion
      Section: Midterm Review
      Fri
      9/23
      Tree Recursion
      HW 03: Recursion, Tree Recursion
      Due Thu 10/6
      5 Mon
      9/26
      Midterm 1 [Testing Center]
      (Mon 9/26 @ 8am - Wed 9/28 @ 9pm) Late Fee: $5, 9/28 @ 3pm
      No Tuesday Section
      Wed
      9/28
      Containers
      Disc 04: Tree Recursion, Python Lists
      Fri
      9/30
      Sequences
      Cats
      Checkpt Fri 10/7
      Due Thu 10/13
      6 Mon
      10/3
      Data Abstraction
      Lab 04: Recursion, Tree Recursion, Python Lists
      Due Wed 10/5
      Wed
      10/5
      Trees
      Section: Work on Cats
      Fri
      10/7
      Working day -- work on Cats
      7 Mon
      10/10
      Mutability
      Disc 05: Trees, Data Abstraction, Sequences
      HW 04: Data Abstraction, Trees
      Due Tue 10/18
      Wed
      10/12
      Syntax
      Lab 05: Python Lists, Trees
      Due Fri 10/14
      Fri
      10/14
      Iterators
      8 Mon
      10/17
      Generators
      Disc 06: Mutability, Iterators and Generators
      HW 05: Iterators and Generators
      Due Tue 10/25
      Wed
      10/19
      Objects
      Lab 06: Mutability, Iterators
      Due Fri 10/21
      Fri
      10/21
      Inheritance
      Ants
      Checkpt 1 Mon 10/31
      Checkpt 2 Thu 11/3
      Due Wed 11/9
      9 Mon
      10/24
      Representation
      Disc 07: Object-Oriented Programming, String Representation
      Wed
      10/26
      Recursive Objects
      Lab 07: Object-Oriented Programming
      Due Fri 10/28
      HW 06: Object-Oriented Programming, Linked Lists
      Due Thu 11/3
      Fri
      10/28
      Working day -- work on Ants
      10 Mon
      10/31
      Efficiency
      Lab 08: Linked Lists, Mutable Trees
      Due Wed 11/2
      Wed
      11/2
      Decomposition
      Midterm Review (No Disc 08)
      Fri
      11/4
      Data Examples
        11 Mon
        11/7
        Midterm 2 [Testing Center]
        (Mon 11/7 @ 8am - Wed 11/9 @ 9pm) Late Fee: $5, 11/9 @ 3pm
        Disc 10: Scheme, Scheme Lists
        Wed
        11/9
        Scheme
        Lab 10: Scheme
        Due Fri 11/11
        HW 07: Scheme
        Due Tue 11/15
        Fri
        11/11
        Exceptions
        12 Mon
        11/14
        Calculator
        Disc 11: Interpreters
        HW 08: Scheme Lists
        Due Tue 11/22
        Wed
        11/16
        Interpreters
        Lab 11: Interpreters
        Due Fri 11/18
        Fri
        11/18
        Project: Scheme Interpreter
        Scheme
        Checkpt 1 Wed 11/23
        Checkpt 2 Fri 12/2
        Due Thu 12/8
        13 Mon
        11/21
        No class -- start Scheme!
          Tue
          11/22
          Friday classes, but no class -- work on assignments
          Wed
          11/23
          No class -- Holiday
          Fri
          11/25
          No class -- Holiday
          14 Mon
          11/28
          Tail Calls
          Section: Work on Schemes
          Wed
          11/30
          Regular Expressions
          Disc 12: Regular Expressions, BNF, SQL
          Fri
          12/2
          Working day -- work on Schemes
          15 Mon
          12/5
          Backus-Naur Form
          Lab 12: Regular Expressions, BNF
          Due Wed 12/7
          HW 09: Regular Expressions
          Due Thu 12/8
          Wed
          12/7
          Conclusion
          C++: 3 sets of slides (Optional, but highly recommending if you plan to take CS 235)
            Section: Final Review
            Thu
            12/8
            Last day of classes -- must turn in all work
              Fri
              12/9
              Exam Preparation Day
                16 Monday
                12/12
                Final Exam [Testing Center]
                (Mon 12/12 @ 8am - Fri 12/16 @ 8pm)