CS171 Syllabus (Lab Schedule here)

(Java Examples here)

(A Brief Introduction to Unix)


Week 1: Jan 13-14

  1. Course information, introduction to computers and computer science (LL,Ch1)

Week 2: Jan 17-21

  1. Intro to programming and relationships with math, functions as computation (UL,Ch1)
  2. Programming with functions, ML: our official functional language (UL,Sec2.1-2.2) Expressions, operators, and identifiers.

Week 3: Jan 24-28

  1. Types, more on operators and expressions (UL,Sec2.1-2.2)
  2. Identifiers and more functions. (UL,Sec2.3,Sec3.1)

Week 4: Jan 31-Feb 4

  1. Even more functions. (UL,Sec2.3,Sec3.1)
  2. The let statement (UL,Sec3.4.1-3.4.2)

Week 5: Feb 7-11

  1. Program design and problem solving, and tuples. (UL,Sec2.4.1-2.4.2)
  2. Step back and review ML (UL,Ch 1,2.1-2.4.2,3.1,3.4.1-3.4.2)

Week 6: Feb 14-18

  1. Lists and Recursion (UL,2.4.3-2.4.6,3.2)
  2. More lists and recursion
    1. A file of ML examples.
    2. Another set of ML examples.

Week 7: Feb 21-25

  1. Exam 1
  2. Hand back and review exam 1

Week 8: Feb 28-Mar 3

  1. Programming as getting things done: imperative and Java (LL,Sec 2.1,2.2,2.3)
  2. Java cont'd

Week 9: Mar 6-10

  1. Variables and assignment in Java (LL, Sec 3.1,3.2,3.3)
  2. Types, expressions, operators, (LL, Sec 3.4,3.5)

Week 10: Mar 13-17

  1. Loops and keyboard input/output (LL, Sec 3.3,3.6,3.7)
  2. Functions and procedures (both called methods) (LL,Sec 4.4)

Week 11: Mar 20-24

  1. More on functions (LL, Sec 4.4)
    1. Example java program: circumference and area calculation
    2. Example java program: skater's tucked speed
  2. More selection and repetition statements (LL, All of Ch 5)

Week 12: Mar 27-31

  1. Spring Break

Week 13: Apr 3-7

  1. Arrays (LL,6 pp 208-228 (stop at MDA) )

Week 14: Apr 10-14

  1. More on loops: with arrays
  2. Exam Two (second class of this week) -- Java

Week 15: Apr 17-21

  1. Searching and sorting, and algorithm analysis (LL, Ch 13)
  2. Sorting cont'd, and recursion in Java (LL, Ch 12)
  3. Review Exam

Week 16: Apr 24-28

  1. Sorting continued, performance analysis

Week 17: May 1 - 5

     
  1. Object-oriented concepts, programming good solutions (LL, 2.4,2.5, Ch 11)
  2. Review

Final Exam

  1. Tuesday, May. 9, 10:30-12:30AM, SH115