CPSC 120B: Fundamentals of Computer Science I
Fall 2009: Class Notes

Date Topic and Associated Reading Study Questions
Sep 1
  • Course Overview
  • Introduction to Computer Science
 
Sep 3
Sep 6
  • Computer architecture (Hardware Overview)
  • Algorithms, programming, programming languages (Section 1.2)
  • Compilers and interpreters (Section 1.2)
Sep 8
  • Java programs - basic structure and style(Section 1.1)
  • Problem Solving & Program Development (Sections 1.3 & 1.4)
  • Character strings & printing (Section 2.1)
  • Self-Review (p. 26) SR# 1.4 - 1.6
  • Exercises (pp. 26, 27) EX# 1.1 - 1.7
  • Self-Review (pp. 62 - 63) SR# 2.2 - 2.5
  • Exercises (p. 63 - 64) EX# 2.1 - 2.5
Sep 10
  • Introduction to variables and assignment statements in Java (Section 2.2)
  • li
  • Primitive data types (Section 2.3)
  • Operators, operator precedence, & expressions (Section 2.4
  • Quiz #1
  • Post Lab 1 Due
  • Self-Review (p. 63) #SR 2.6 - 2.14;
  • Exercises (p. 64 - 66) #EX 2.6 - 2.11
Sep 13
  • Expressions, continued
  • Data conversion (Section 2.5)
  • Interactive programs - Scanner class (Section 2.6)
Sep 15
  • Objects and Classes (Sections 1.5, 3.1)
  • Self Review (page 26) #SR 1.8
Sep 17
  • The String class (Section 3.2)
  • Classes and class libraries (Sections 3.2 & 3.3)
  • Quiz #2
  • Post Lab 2 Due
  • Self Review (pp. 101-102) #3.1 - 3.7
  • Exercises (pp. 102 - 103) #3.1 - 3.4
Sep 20
  • Classes & Class libraries continued
  • Math class, Random class (Sections 3.4 & 3.5)
  • Self-Review (p. 102) #SR3.10 - 3.16
  • Exercises (p. 103 #EX3.6 - 3.9
  • Programming Projects (p. 104) #3.1, 3.2
Sep 22
  • More with classes and method signatures
  • Exercise (p. 104) #3.10, 3.11
Sep 24
  • Review
Sep 27 Test 1
Sep 29
  • Representation of Numeric Data
  • Number Systems (binary, octal, hex; general concept of a base - Appendix B)
Oct 1
Oct 4
  • Introduction to Conditionals and Logic (Section 4.1, Logic Handout)
  • Boolean Expressions
  • if statements (Section 4.2)
  • Self-Review (pp. 157 - 158) #4.1- 4.4
  • Exercises (pp. 158 - 159) #4.1- 4.5
  • Study Questions from Logic Handout
Oct 6
  • Logic and Conditionals, continued
  • Truth Tables, Laws of Logic
Oct 8
  • Logic, Conditionals, and Programming Continued
  • Comparing Data (Section 4.3)
  • Post lab #5 Due
  • Self-Review (p. 158) # 4.5 - 4.8
Oct 11
  • Switch Statements (Section 4.4)
  • Testing (Section 5.9)
  • Self-Review (p. 158) # 4.9
Oct 13
Oct 15
Oct 25
  • Introduction to Loops (Section 4.5)
  • Self-Review (p. 158) #SR 4.10, 4.11
  • Exercises (p. 159-160) 4.7, 4.8, 4.11, 4.13, 4.14
Oct 27
  • Do Loops (Sections 4.7)
  • For Loops (Section 4.8)
  • Self-Review (p. 158) #SR 4.11
  • Exercises (p. 160) #EX 4.11
Oct 29
  • Test 2 Review
Nov 1 Test 2
Nov 3
  • Introduction to Writing Classes (Sections 5.1, 5.2)
  • Self-Review (p. 158) #SR 4.12
  • Exercises (p. 160) #EX 4.9 - 4.12, 4.15 - 4.23
Nov 5
  • Introduction to Writing Classes, continued (Sections 5.1, 5.2)
  • Writing Classes - encapsulation (Section 5.3)
  • Self-Review (p. 227) #SR 5.1 - 5.4
  • Exercises (p. 228) EX5.1 - 5.4
Nov 8
  • Methods (Section 5.4)
  • Self-Review (p. 227) SR 5.6 - 5.9, 5.12 - 5.14
  • Exercises (pp. 228 - 229) EX 5.7, 5.10 - 5.20
Nov 10 No Class
Nov 12
  • Writing classes, continued (Sections 5.1 - 5.4)
 
Nov 15
  • Writing classes, continued (Sections 5.1 - 5.4)
 
Nov 17
  • Static Class Members (Section 5.5)
 
Nov 19
  • Test 3 Review
Nov 22 Test 3
Nov 29
  • Introduction to Arrays (Sections 7.1 & 7.2)
  • Self-Review (p. 367) SR #7.1 - 7.8
  • Exercises (p. 368) EX 7.1 - 7.3 EX 7.5 - 7.9
Dec 1
  • Arrays of Objects (Section 7.3)
  • Self Review #7.9
  • Exercise #7.4
Dec 3
  • Multidimensional Arrays
  • Self Review #7.12
Dec 6
  • Reading from a File
 
Dec 8
  • Path Finding
 
Dec 10
  • Review for Final