Date | Reading | Topic | Lab | Examples |
9/2 | - | - | In lab: set up running SLIME Ch 11.1-11.3 of HKK | |
9/3 | Ch 11, HKK | Intro Ch 11.1-11.3 of HKK Lecture available on Moodle | - | add.asm - this program reads in 2 integers, adds them up |
9/4 | - | - | Project 1 | |
9/5 | Ch 11, HKK | Ch 11.3 - 1.4 of HKK Lecture available on Moodle | - | smaller.asm - this program reads in 2 integers, then prints the smaller number sum1ton.asm - this program reads in a positive integer n and prints out the sum |
9/8 | Ch 11, HKK | Ch 11.4 of HKK Lecture available on Moodle | - | range.asm - read in two numbers then print all integers between the two numbers inclusive fact.asm - computes the factorial from 1 up to a user input number, the iterative version |
9/9 | - | - | Project 1 | |
9/10 | Ch 11, HKK | Ch 11.5 of HKK Lecture available on Moodle | - | fact.asm - computes the factorial from 1 up to a user input number, the recursive version sumDigits.asm - sums the digits of a number, the recursive version |
9/11 | - | - | Project 1 | |
9/12 | Ch 11, HKK | Catchup | - | writeDigitsStart.asm - writes each digital of a number, version 1 writeDigits.asm - writes each digital of a number, final version |
9/15 | Ch 1 | Ch 1.1 Lecture available on Moodle | - | HelloWorld.java - your very first Java program UseArgument.java - Java program that takes in user arguments IntOps.java - Java program illustrating integer operations |
9/16 | - | - | Project 1 (if you finished Project 1, move onto Project 2) | |
9/17 | Ch 1 | Project 1 due (at the start of class) Ch 1.2 Lecture available on Moodle | - | |
9/18 | - | - | Project 2 | |
9/19 | Ch 1 | Ch 1.2 - 1.3 Lecture available on Moodle | - | flip.java - Java program Simulating a fair coin flip TenHellos.java - Java program printing out "hello" 10 times coinflips.java - Java program Simulating n coin flips and calculates the fraction of heads |
9/22 | Ch 1 | Ch 1.3 Lecture available on Moodle | - | n_coinflips.java - Java program Simulating multiple person, each doing n coin flips
PrintDate.java - Java program printing days, month, year, demonstrating switch statements Prime.java - Java program taking a command-line argument N and prints out true if N is prime, and false otherwise Prime.java - Prime.java rewritten in different loop constructs Primes.java - Java program printing all primes <= the number given as the 0th command argument. |
9/23 | - | - | Project 2 | |
9/24 | Ch 1 | Ch 1.4 Lecture available on Moodle | - | bubble_sort.java - Java program filling an array full of random integers, then do a bubble sort. |
9/25 | - | - | Project 2 | |
9/26 | Ch 1 | Ch 1.4 - 1.5 Lecture available on Moodle | - | Matrix.java - Java program implementing Matrix operations. |
9/29 | Ch 1 | Project 2 due (at the start of class) Ch 1.5 Lecture available on Moodle | - | Average.java - Java program reads in a sequence of real numbers, and computes their average; demonstrating StdIn
BouncingBall.java - Java program implementing a 2-d bouncing ball, demonstrating StdDraw |
9/30 | - | - | Project 3 | |
10/1 | Ch 2 | Ch 2.1 Lecture available on Moodle | - | Primes.java - Java program printing all primes up to the number given as the 0th command argument. bubbleSort_b.java - Java program implementing a bubble sort, using static methods |
10/2 | - | - | Project 3 | |
10/3 | Ch 2 | Ch 2.2 Lecture available on Moodle | - | Sierpinski.java - Play chaos game on triangle to produce Sierpinski triangle
Carpet.java - Draws the Sierpinski Carpet using the Chaos Game Method CheckerBoard.java - Write a program that takes a command-line argument N and plots an N-by-N checkeroard with red and black squares. |
10/6 | - | Test 1 review Topics covered for written test # 1 Test 1 preparation notes available on Moodle | - | |
10/7 | - | - | No lab (Nobel Conference) Office hour (midterm Q&A) 4pm - 6pm | |
10/8 | - | No class (Nobel Conference) Office hour (midterm Q&A) 4pm - 6pm | - | |
10/9 | - | - | Programing Test 1 | |
10/10 | - | Written Test 1 | - | - |
10/13 | Ch 2 | Ch 2.3 Lecture available on Moodle | - | Factorial.java - The "hello world" of recursion; recursively compute N factorial
BinarySearch.java - Implements a binary search TowerOfHanoi.java - Solves the "tower of Hanoi" puzzle |
10/14 | - | - | Project 3 | |
10/15 | Ch 2 | Ch 2.3 Lecture available on Moodle | - | MergeSort.java - Recursive version of merge sort |
10/16 | - | - | Project 3 | |
10/17 | Ch 4 | Project 3 due (at the start of class) Ch 4.1 Lecture available on Moodle | - | Carpet.java - Draw a Sierpinski carpet RecursiveGraphics.java - Draws another recursive carpet |
10/20 | - | Reading day | - | |
10/21 | - | Reading day | - | |
10/22 | Ch 4 & notes | Ch 4.1 & 9.6 notes Lecture available on Moodle | - | Fibonacci.java - Recursively solves the Fibonacci sequence, then solves it using Top Down DP (Memoization) and Bottom Up DP |
10/23 | - | - | Project 4 | |
10/24 | notes | 9.6 notes Lecture available on Moodle | - | Choose.java - Recursively solves binomial coefficient, then solves it using Top Down DP (Memoization) and Bottom Up DP |
10/27 | notes | Dynamic programing vs Memoization Lecture available on Moodle | - | |
10/28 | - | - | Project 4 | |
10/29 | notes | Dynamic programing vs Memoization Lecture available on Moodle | - | LCS1.java - Solves Longest Common Substring problem using dynamic programming |
10/30 | - | - | Project 4 | |
10/31 | notes | LCS Lecture available on Moodle | - | |
11/3 | notes | Project 4 due (at the start of class) LCS Lecture available on Moodle | - | |
11/4 | - | - | Project 5 | |
11/5 | Ch 3 & 4 | Ch 3.1 Lecture available on Moodle | - | |
11/6 | - | - | Project 5 | |
11/7 | Ch 3 | Ch 3.2 Lecture available on Moodle | - | Charge.java - The instance class implement a Charge ChargeClient.java - The client class using Charge IntegerStack.java - Class implementing integer stack |
11/10 | Ch 4 | Ch 4.3 Lecture available on Moodle | - | |
11/11 | - | - | Project 5 | |
11/12 | notes | Method Overloading & Interfaces Lecture available on Moodle | - | Employee.java - Super class implementing employee
HourlyEmployee.java - Sub class implementing hourly employee SalariedEmployee.java - Sub class implementing salaried employee Date.java - class implementing date |
11/13 | - | - | Project 5 | |
11/14 | notes | Inheritance & Polymorphism Lecture available on Moodle | - | IntegerArrayStack.java - A derived class of the IntegerStack class
Drawable.java - Interface drawable Circle.java - Circle class extends interface drawable Square.java - Square class extends interface drawable TestDraw.java - Draw using Circle class and Square class |
11/17 | notes | Project 5 due (at the start of class) Generics | - | |
11/18 | - | - | Project 6 | |
11/19 | notes | Generics Lecture available on Moodle | - | ArrayListExample.java - The ArrayList example Movies.java - My IMDB example |
11/20 | - | - | Project 6 | |
11/21 | - | Test 2 review | - | |
11/24 | - | Written Test 2 | - | |
11/25 | - | - | Programing Test 2 | |
11/26 | - | No class (Thanksgiving break) | - | |
11/27 | - | No class (Thanksgiving break) | - | |
11/28 | - | No class (Thanksgiving break) | - | |
12/1 | notes | Swing, UML and Source Code Lecture available on Moodle | - | |
12/2 | - | - | Project 6 | |
12/3 | notes | Project 6 due (at the start of class) Land of GACK Lecture available on Moodle | - | |
12/4 | - | - | Project 7 | |
12/5 | Ch 11 | Project 7 | - | |
12/8 | - | - | Project 7 | |
12/9 | - | - | Project 7 | |
12/10 | - | - | Project 7 | |
12/11 | - | - | Project 7 | |
12/12 | - | Project 7 due (at the start of class) Review/Evaluations | - |