IB Computer Science 2

From WLCS
Revision as of 20:14, 14 October 2015 by Admin (talk | contribs)

Wednesday (10/15/15)

Agenda:

  • Demo any missing assignments to Mr. Bui
  • Complete the Point class definition from last class
  • Define more static methods in PointMain.java:
    • double distance(Point p1, Point p2) - returns distance between p1 and p2
    • Point midPoint(Point p1, Point p2) - returns a new Point, which is the midpoint between p1 and p2
  • Test your new methods in the main(). Demonstrate the tests to Mr. Bui

Monday (10/13/15)

Agenda:

  • Demo missing assignments
  • IA Progress Assignment (due tomorrow!) - via Google Classroom
    1. You will upload any/all code or tutorial documentation to justify your progress on the Internal Assessment.
    2. You must submit at least 3 artifacts demonstrating Internal Assessment progress for full credit.
    3. You may include screenshots of tutorial completions (e.g. CodeAcademy).
    4. At the top of each file, annotate the code or screenshot, explaining what it is and how it is a reasonable artifact for your Internal Assessment
    5. You may upload multiple files. Be sure to include your name in each document.
    6. LATE submissions will be penalized
  • Java Functions/Methods Review
  • Java Objects
  • Point Class assignment walk-through
    1. You will create two java files: Point.java and PointMain.java
      • Point.java - the Point class definition will be here
      • PointMain.java - only the main() method will be located here
    2. Declare and initialize the following private attributes in the Point class
      • double x = 0.0
      • double y = 0.0
    3. Define the following public methods in the Point class
      • double getX() - returns the x-coordinate
      • double getY() - returns the y-coordinate
      • void setX(double newX) - sets the x-coordinate to the new x-coordinate parameter
      • void setY(double newY) - sets the y-coordinate to the new y-coordinate parameter
      • String toString() - returns a String representation of the Point object
    4. Go to your PointMain.java file to test out your Point class
    5. In the main method, create several new instances of Point objects
    6. Print out each of your Point objects
    7. Define a static method in PointMain.java named double slope(Point p1, Point p2) - returns the slope between p1 and p2
    8. Test and print out your slope method when you use it with your instantiated Point objects in the main() method

Thursday (10/8/15)

Agenda:

  • Demo Two-Dimensional Array Assignment

Tuesday (10/6/15)

Agenda:

  • Search and sort quiz
  • Two-Dimensional Array Assignment
    1. Write a function: matrixAdd(a, b) that returns a new matrix that is the sum of a and b
      • Be sure to check if the two matrices are the same size (if not, then return null)
    2. Write a function: fliplr(m) that returns a new matrix that is the horizontal flip (left to right) of matrix m
    3. Write a function: flipud(m) that returns a new matrix that is the vertical flip (up to down) of matrix m
    4. Extra Credit: Write a function: matrixMult(a, b) that returns the product of matrix a and b
      • Be sure to check the rules of matrix multiplication
      • Return an null matrix if their sizes are different
  • Challenge: Write the function det(m) which returns the determinant of any matrix m

Friday (10/2/15)

Warmup:

Agenda:

  • Demo both selection sort and bubble sort
  • Media:Sorting.pptx
  • Quicksort discussion
  • Search and sort quiz next Tuesday (10/6/15). Be able to describe the step-by-step algorithm
    • Linear search
    • Binary search
    • Selection sort
    • Bubble sort
  • Reference variables overview
  • Two-Dimensional Arrays and Nested Loops
    1. Accessing all of the individual elements of a two-dimensional list
    2. Prompt the user to construct a two-dimensional list
      1. Prompt for the number of rows
      2. Prompt for the number of columns
      3. Prompt the user for each number in the two-dimensional list
    3. Write the function matrixPrint(m)
  • Two-Dimensional Array Assignment
    1. 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)
    2. 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

Wednesday (9/30/15)

Warmup:

  1. Create a 2-3 person group
  2. Grab ~6 playing cards
  3. Walk-through the "bubble sort" algorithm with your group

Agenda:

Monday (9/28/15)

Warmup:

  1. Create a 2-3 person group
  2. Take some (~6) playing cards
  3. Lay them out randomly in a row (out of order)
  4. As a team, discuss an algorithm to sort them
  5. You are only allowed to swap cards (i.e. they cannot be removed or added to a new array)
  6. Sort them in numerical order (Ace is high)
  7. Write down the basic steps to your algorithm

Agenda:

Thursday (9/24/15)

Agenda:

Tuesday (9/22/15)

Warmup:

Agenda:

Friday (9/18/15)

Agenda:

Homework:

Wednesday (9/16/15)

Agenda:


Monday (9/14/15)

  • Media:SystemDesignBasics.pptx
  • Usability Assignment (due Wednesday (9/16/15)
    1. Sign into your APS Google account
    2. Open a Google Doc and title it Usability Assignment
    3. Put your name at the top
    4. Use Nielsen's 10 Usability Heuristics
    5. Find 2 examples of good usability
      1. Take a screenshot or find a picture of the example
      2. Paste it into the Google Doc
      3. Point out or highlight the specific usability aspect somehow (in red or bright green are best)
      4. State which usability rule the example is following, and describe how it follows it
      5. Repeat for each of the 2 examples of good usability (each example should be a different usability rule)
    6. Find 2 examples of bad usability
      1. Take a screenshot or find a picture of the example
      2. Paste it into the Google Doc
      3. Point out or highlight the specific usability aspect failure (in red or bright green are best)
      4. State which usability rule the example is breaking, and describe how it breaks it
      5. Repeat for each of the 2 examples of bad usability (each example should be a different usability rule)
    7. Submit the document through Google Classroom

Homework:

  1. Syllabus agreement form (due Friday 9/18/15)
  2. Quiz on Media:SystemDesignBasics.pptx on Wednesday (9/16/15)
  3. Usability Assignment (due Wednesday (9/16/15)

Thursday (9/10/15)

Tuesday (9/8/15)

  • Introductions
  • Name cards

Homework:

  1. Go to Syllabus (on the left)
  2. Read it
  3. Complete the agreement form with your parent (you will need your APS Google login)