IB Computer Science 2
From WLCS
Contents
- 1 Tuesday (10/7/14)
- 2 Monday (10/6/14)
- 3 Friday (10/3//14)
- 4 Wednesday - Thursday (10/1/14 - 10/2/14)
- 5 Monday - Tuesday (9/29/14 - 9/30/14)
- 6 Thursday - Friday (9/25/14 - 9/26/14)
- 7 Tuesday - Wednesday (9/23/14 - 9/24/14)
- 8 Friday - Monday (9/19/14 - 9/22/14)
- 9 Wednesday - Thursday (9/17/14 - 9/18/14)
- 10 Monday - Tuesday (9/15/14 - 9/16/14)
- 11 Thursday - Friday (9/10/14 - 9/12/14)
- 12 Friday - Wednesday (9/5/14 - 9/10/14)
- 13 Wednesday - Thursday (9/3/14 - 9/4/14)
- 14 Tuesday (9/2/14)
Tuesday (10/7/14)
Agenda:
- Searching & Sorting Quiz
- Queues - Media:Queues.ppt
- Create a StaticQueue class
- Use StaticStack as a template
- Be sure to have all the queue attributes
- int head
- int tail
- int [] queue
- Be sure to have all the queue operations
- default StaticQueue() and specific StaticQueue(int size) constructors
- void enqueue(int data) - adds data to the tail of the queue if it is not full
- void add(int data) - adds data to the tail of the queue if it is not full
- int dequeue() - removes and returns data from the head of the queue if it is non-empty
- int remove() - removes and returns data from the head of the queue if it is non-empty
- boolean isFull() - returns true if the queue is full, false otherwise
- boolean isEmpty() - returns true if the queue is empty, false otherwise
- int peek() - returns data element at the head (but does not remove it)
- Create any other queue methods that may be useful
- void print()
- Test your queue class to see if it works
Monday (10/6/14)
- Searching & Sorting Quiz
- Demo your matrix functions
- Complete the StaticStack class
- Test it with Media:StackMain.java
- Stacks quiz on Thursday & Friday (10/9/14, 10/10/14)
- Be able to describe the characteristics of a stack
- Be able to explain the operations of a stack
- Be able to describe different stack applications
- If given a list or an array, be able to explain their use as stacks
- Queues - Media:Queues.ppt
- Create a StaticQueue class
- Use StaticStack as a template
- Be sure to have all the queue attributes
- Be sure to have all the queue operations
- Create any other queue methods that may be useful
- Test your queue class to see if it works
Friday (10/3//14)
Agenda:
- Searching & Sorting Quiz on Monday & Tuesday (10/6/14, 10/7/14)
- Demo your matrix functions
- Complete the StaticStack class
- Test it with Media:StackMain.java
- Stacks quiz on Thursday & Friday (10/9/14, 10/10/14)
- Be able to describe the characteristics of a stack
- Be able to explain the operations of a stack
- Be able to describe different stack applications
- If given a list or an array, be able to explain their use as stacks
- Queues - Media:Queues.ppt
- Create a StaticQueue class
- Use StaticStack as a template
- Be sure to have all the queue attributes
- Be sure to have all the queue operations
- Create any other queue methods that may be useful
- Test your queue class to see if it works
Wednesday - Thursday (10/1/14 - 10/2/14)
Agenda:
- Searching & Sorting Quiz on Monday & Tuesday (10/6/14, 10/7/14)
- Demo your matrix functions
- Introduction to Stacks - Media:Stacks.ppt
- Stacks quiz on Monday & Tuesday (10/6/14, 10/7/14)
- Be able to describe the characteristics of a stack
- Be able to explain the operations of a stack
- Be able to describe different stack applications
- If given a list or an array, be able to explain their use as stacks
- StaticStack class walk-through
Monday - Tuesday (9/29/14 - 9/30/14)
Agenda:
- Two-Dimensional Array Assignment
- Write a function: matrixAdd(m1, m2) that returns a new matrix that is the sum of m1 and m2
- Be sure to check if the two matrices are the same size (if not, then return null)
- Write a function: fliplr(m) that returns a new matrix that is the horizontal flip (left to right) of matrix m
- Write a function: flipud(m) that returns a new matrix that is the vertical flip (up to down) of matrix m
- Write a function: matrixMult(m1, m2) that returns the product of matrix m1 and m2
- Be sure to check the rules of matrix multiplication
- Return an null matrix if their sizes are different
- Write a function: matrixAdd(m1, m2) that returns a new matrix that is the sum of m1 and m2
- Challenge: Write the function det(m) which returns the determinant of any matrix m
Thursday - Friday (9/25/14 - 9/26/14)
Agenda:
- Two-Dimensional Arrays and Nested Loops
- Accessing all of the individual elements of a two-dimensional list
- Prompt the user to construct a two-dimensional list
- Prompt for the number of rows
- Prompt for the number of columns
- Prompt the user for each number in the two-dimensional list
- Write the function matrixPrint(m)
- Two-Dimensional Array Assignment
- Write a function: matrixAdd(m1, m2) that returns a new matrix that is the sum of m1 and m2
- Be sure to check if the two matrices are the same size (if not, then return null)
- Write a function: matrixMult(m1, m2) that returns the product of matrix m1 and m2
- Be sure to check the rules of matrix multiplication
- Return an null matrix if their sizes are different
- Write a function: matrixAdd(m1, m2) that returns a new matrix that is the sum of m1 and m2
- 2-D array deep copying
import copy
m2 = copy.deepcopy(m1)
- Write a function: fliplr(m) that returns a new matrix that is the horizontal flip (left to right) of matrix m
- Write a function: flipud(m) that returns a new matrix that is the vertical flip (up to down) of matrix m
- Challenge: Write the function det(m) which returns the determinant of any matrix m
Tuesday - Wednesday (9/23/14 - 9/24/14)
Agenda:
- Bubble Sort - Media:Sorting.pptx
- Make sure you have completed the CodingBat Array Review
- Complete 10 of your choice from Array2
- Demo JavaSelectionSortAssignment.java
- Complete JavaBubbleSortAssignment.java
- Introduction to Quicksort
Friday - Monday (9/19/14 - 9/22/14)
Warmup:
- Create a 2-3 person group
- Take some (~6) playing cards
- Lay them out randomly in a row (out of order)
- As a team, discuss an algorithm to sort them
- You are only allowed to swap cards (i.e. they cannot be removed or added to a new array)
- Sort them in numerical order (Ace is high)
- Write down the basic steps to your algorithm
Agenda:
- Introduction to Sorting Activity
- Selection Sort - Media:Sorting.pptx
- Complete JavaSelectionSortAssignment.java by next class
- CodingBat Array Review - due Monday (9/22/14)
- Work on JavaBubbleSortAssignment.java
Wednesday - Thursday (9/17/14 - 9/18/14)
Warmup:
- Review Binary Search in Media:Searching.pptx
Agenda:
- Review Searching - Media:Searching.pptx
- Complete JavaSearchAssignment.java
- Linear Search
- Binary Search
Monday - Tuesday (9/15/14 - 9/16/14)
Agenda:
- Demo Guessing Game Assignment in Java
- Review Java Arrays
- Searching - Media:Searching.pptx
- Linear Search
- Binary Search
- Complete JavaSearchAssignment.java
- CodingBat Array Review
Thursday - Friday (9/10/14 - 9/12/14)
Agenda:
- Quiz on Media:SystemDesignBasics.pptx
- Java Review
- Simple main method
- Weapon, Creature, CombatSimulation
- Java Programming Cheatsheet
- Java Practice
- Java input with Scanner
- Circle circumference and area calculator
- Recreate the Guessing Game Assignment in Java
- You may need to look up how to do random numbers in Java
- You can always refer to the Java Programming Cheatsheet
Friday - Wednesday (9/5/14 - 9/10/14)
Warmup:
- Turn in signed syllabus sheet if you have it
- Submit Internal Assessment Criteria A & B via Google Classroom
Agenda:
- Media:SystemDesignBasics.pptx
- Quiz on Media:SystemDesignBasics.pptx on Thursday, Friday (9/11/14, 9/12/14)
- Internal Assessment discussions
- Usability Assignment
- Sign into your APS Google account
- Open a Google Doc and title it Usability Assignment
- Put your name at the top
- Use Nielsen's 10 Usability Heuristics
- Find 2 examples of good usability
- Take a screenshot or find a picture of the example
- Paste it into the Google Doc
- Point out or highlight the specific usability aspect somehow (in red or bright green are best)
- State which usability rule the example is following, and describe how it follows it
- Repeat for each of the 2 examples of good usability (each example should be a different usability rule)
- Find 2 examples of bad usability
- Take a screenshot or find a picture of the example
- Paste it into the Google Doc
- Point out or highlight the specific usability aspect failure (in red or bright green are best)
- State which usability rule the example is breaking, and describe how it breaks it
- Repeat for each of the 2 examples of bad usability (each example should be a different usability rule)
- Submit the document through Google Classroom
Wednesday - Thursday (9/3/14 - 9/4/14)
Agenda:
- IB Computer Science II Syllabus
- Signed syllabus sheets due by the end of next week
- Google Classroom
- Sign into your APS Google accounts
- Class code: gaxvqsv
- Internal Assessment Discussions
Tuesday (9/2/14)
- Re-introductions
- Name cards
- Guest login
- Username: guest
- No password (just hit enter)
- Complete the Student Survey
- Internal Assessment Discussion