Difference between revisions of "IB Computer Science 2"

From WLCS
(28 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Monday - Wednesday (10/16/17 - 10/18/17) ==
+
== Monday - Tuesday (11/20/17 - 11/21/17) ==
 
'''Agenda:'''
 
'''Agenda:'''
* Demo the [https://docs.oracle.com/javase/tutorial/uiswing/learn/index.html CelsiusConverter GUI Tutorial]
+
* TURN IN PERMISSION SLIPS! (caps are intentional to convey yelling)
* Search and sort quiz this Thursday (10/19/17). Be able to describe the step-by-step algorithms:
+
* Return Node Quiz
** Linear search
+
** Node Quiz retakes
** Binary search
+
* Complete and demo [[Java - Dynamic Stack Assignment]]
** Selection sort
+
** If you have not, then complete it over Thanksgiving Break
** Bubble sort
 
* Java Functions/Methods Review
 
** [[Media:JavaMethods.pptx]]
 
** Method Definitions
 
** Method Return types
 
** Method Parameters
 
** Method Calls
 
* Java Objects
 
** [[Media:IntroObjects.ppt]]
 
** [[Media:ObjectUsageReview.ppt]]
 
** [[Media:ObjectUsageReview2.ppt]]
 
** [[Media:IntroClasses.ppt]]
 
** [[Media:OOP.pptx‎]]
 
* Point Class assignment
 
*# 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
 
*# Declare and initialize the following '''private''' attributes in the Point class
 
*#* double x = 0.0
 
*#* double y = 0.0
 
*# Define two Point() constructors:
 
*#* default constructor: Point()
 
*#* specific constructor Point(double newX, double newY)
 
*# 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 (skip this for now)
 
*# Go to your PointMain.java file to test out your Point class
 
*# In the main method, create several new instances of Point objects
 
*# Print out each of your Point objects
 
*# Define a static method in PointMain.java named '''double slope(Point p1, Point p2)''' - returns the slope between p1 and p2
 
*# Test and print out your slope method when you use it with your instantiated Point objects in the main() method
 
  
== Thursday - Friday (10/12/17 - 10/13/17) ==
+
== Thursday (11/16/17) ==
 
'''Agenda:'''
 
'''Agenda:'''
* Demo missing assignments
+
* Take the Node Quiz (~10 minutes)
* Complete the [https://docs.oracle.com/javase/tutorial/uiswing/learn/index.html CelsiusConverter GUI Tutorial]
+
* Work on [[Java - Dynamic Stack Assignment]]
** Be sure to read the page, complete the steps, and then hit '''next'''
 
* Java NetBeans GUI Review
 
  
== Tuesday (10/10/17) ==
+
== Monday - Wednesday (11/13/17 - 11/15/17) ==
 
'''Agenda:'''
 
'''Agenda:'''
* Mr. Bui is out today b/c his son is sick.
+
* Demo completed [[Java - Static Queue Assignment]]
* Complete any missing assignments
+
** Be sure that you cover the special enqueue/add and dequeue/remove scenarios!
* Complete the [https://docs.oracle.com/javase/tutorial/uiswing/learn/index.html CelsiusConverter GUI Tutorial]
+
* Work on the Circular Queue challenge at the end of [[Java - Static Queue Assignment]]
** Be sure to read the page, complete the steps, and then hit '''next'''
+
* Object and References Review
 +
** [[Media:Point.java]]
 +
** [[Media:ReferencesReview.java]]
 +
* Node class
 +
** [[Media:Node.java]]
 +
** [[NodeDemo.java]]
 +
** [[AnotherNodeDemo.java]]
 +
* Node Quiz on Thursday (11/16/17)
 +
** 2 questions
 +
** If given code, you can draw a memory diagram
 +
** If given a memory diagram, you can write the code to create it
  
== Friday (10/6/17) ==
+
== Monday - Thursday (11/6/17 - 11/9/17) ==
 
'''Agenda:'''
 
'''Agenda:'''
* Demo missing assignments
+
* Group 4 field trip chaperone forms?
** Everything up through Bubble Sort
+
* Read Queues - [[Media:Queues.ppt]]
 +
* Play with the [https://www.cs.usfca.edu/~galles/visualization/QueueArray.html Queues Array Implementation]
 +
* Work on [[Java - Static Queue Assignment]]
  
== Thursday (10/5/17) ==
+
== Wednesday - Friday (11/1/17 - 11/3/17) ==
 
'''Agenda:'''
 
'''Agenda:'''
* Mr. Bui is sick today
+
* Group 4 Project Field Trip
* Complete any missing assignments
+
** November 29th, 2017
* Work on your Internal Assessment code
+
** Smithsonian Museum of Natural History
** If you cannot work on your code, you should research or design aspects of your code that you know you will need to develop
+
** We need chaperones -- ask your parent and return the form
 
+
* Introduction to Stacks - [[Media:Stacks.ppt]]
== Wednesday (10/4/17) ==
+
** Be able to describe the characteristics of a stack
'''Agenda:'''
+
** Be able to explain the operations of a stack
* Introduction to Sorting
+
** Be able to describe different stack applications
** [[Media:Sorting.pptx]]
+
** If given a list or an array, be able to explain their use as stacks
* Complete and demo [[Media:SelectionSort.java]]
+
* [https://www.cs.usfca.edu/~galles/visualization/Algorithms.html Data Structure Visualizations]
* Complete and demo [[Media:BubbleSort.java]]
+
* Static-sized Stack class walk-through
 
+
*# Read through and analyze ALL the code for [[Media:Stack.java]]
== Monday - Tuesday (10/2/17 - 10/3/17) ==
+
*# Create a new project and include [[Media:Stack.java]] and [[Media:StackMain.java]]
'''Agenda:'''
+
*# Test out [[Media:Stack.java]] and [[Media:StackMain.java]]
* Introduction to Sorting
+
* Read Queues - [[Media:Queues.ppt]]
** [[Media:Sorting.pptx]]
+
* Play with the [https://www.cs.usfca.edu/~galles/visualization/QueueArray.html Queues Array Implementation]
* Complete and demo [[Media:SelectionSort.java]]
+
* Work on [[Java - Static Queue Assignment]]
* Period 6
 
** Complete and demo [[Media:BubbleSort.java]]
 
 
 
== Thursday - Friday (9/28/17 - 9/29/17) ==
 
'''Agenda:'''
 
* Complete and demo [[JavaSearchAssignment.java]]
 
* Introduction to Sorting
 
** [[Media:Sorting.pptx]]
 
* Work on [[Media:SelectionSort.java]]
 
 
 
== [https://docs.google.com/presentation/d/1PoA335gHnDCoWpGEpgHLDDaVzxjZ7fdE-oDaQaiENaQ/edit?usp=sharing Back to School Night (9/27/17)] ==
 
 
 
== Wednesday (9/27/17) ==
 
'''Agenda:'''
 
* Complete [[JavaSearchAssignment.java]]
 
 
 
== Monday - Tuesday (9/25/17 - 9/26/17) ==
 
'''Agenda:'''
 
* Demo missing assignments
 
* Demo completed [[Java Arrays Assignment]]
 
* Searching - [[Media:Searching.pptx]]
 
** Linear Search
 
** Binary Search
 
* Complete [[JavaSearchAssignment.java]]
 
 
 
== Thursday - Friday (9/21/17 - 9/22/167) ==
 
'''Agenda:'''
 
* Demo Array-1 and Array-2 for credit
 
* Complete [[Java Arrays Assignment]]
 
 
 
== Tuesday - Wednesday (9/19/17 - 9/20/17) ==
 
'''Agenda:'''
 
* Complete the following exercises in [http://codingbat.com/java/String-1 CodingBat: String-1]
 
** makeOutWord
 
** extraEnd
 
** firstTwo
 
* Complete the following exercises in [http://codingbat.com/java/String-2 CodingBat: String-2]
 
** doubleChar
 
** countHi
 
* [https://docs.google.com/a/apsva.us/presentation/d/1Ayzvd1q-6RwZKplUtLHDCCLyO5XIR5kyeKUi8-htErY/edit?usp=sharing Arrays (Java)]
 
** Additional review material: [[Media:IntroArrays.ppt]]
 
** [http://codingbat.com/java/Warmup-2 CodingBat Array Warmup] (as a class)
 
*** arrayCount9
 
*** array123
 
*** noTriples
 
** Complete the following exercises in [http://codingbat.com/java/Array-1 CodingBat: Array-1]
 
*** no23
 
*** makeMiddle
 
*** swapEnds
 
** Complete the following exercises in [http://codingbat.com/java/Array-2 CodingBat: Array-2]
 
*** sum67
 
*** matchUp
 
 
 
== Friday - Monday (9/15/17 - 9/18/17) ==
 
* for loop review
 
** [https://docs.google.com/a/apsva.us/presentation/d/1ybEzO70d-bzZf-zrTJZq4d9AB5tTQwP7E2K6S-KucSo/edit?usp=sharing Java for loops]
 
* Java String review
 
** [https://docs.google.com/a/apsva.us/presentation/d/1VBmjWzYNJ4cTBN0BrbnX0R4vrt6NHIr1gRppRd9MJx8/edit?usp=sharing Java Strings]
 
* [http://codingbat.com/java/Warmup-2 CodingBat: Warmup-2] class practice & review
 
* Complete the following exercises in [http://codingbat.com/java/String-1 CodingBat: String-1]
 
** makeOutWord
 
** extraEnd
 
** firstTwo
 
* Complete the following exercises in [http://codingbat.com/java/String-2 CodingBat: String-2]
 
** doubleChar
 
** countHi
 
 
 
'''Homework:'''
 
* Complete the CodingBat: String-1 & String-2 exercises listed above (from class)
 
 
 
== Thursday (9/14/17) ==
 
'''Agenda:'''
 
* Demo missing Guessing Game
 
* Senior panoramic photo @ the stadium
 
* for loop review
 
** [https://docs.google.com/a/apsva.us/presentation/d/1ybEzO70d-bzZf-zrTJZq4d9AB5tTQwP7E2K6S-KucSo/edit?usp=sharing Java for loops]
 
 
 
== Wednesday (9/13/17) ==
 
'''Agenda:'''
 
* Create the [[Guessing Game Assignment]] in Java
 
** You can always refer to the [http://introcs.cs.princeton.edu/java/11cheatsheet/ Java Programming Cheatsheet]
 
** Demo your program for credit
 
* Work on your Internal Assessment programming code with your free time
 
 
 
== Monday - Tuesday (9/11/17 - 9/12/17) ==
 
'''Agenda:'''
 
* Introduction to NetBeans
 
** Customizations
 
* Java Review - [http://introcs.cs.princeton.edu/java/11cheatsheet/ Java Cheatsheet]
 
** Introduction to NetBeans IDE
 
** Simple main method
 
** Variables, types, values
 
** Keyboard input w/ Scanner
 
** Circle circumference and area calculator
 
** if statements
 
** while and for loops
 
* 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 [http://introcs.cs.princeton.edu/java/11cheatsheet/ Java Programming Cheatsheet]
 
 
 
== Wednesday - Friday (9/6/17 - 9/8/17) ==
 
'''Agenda:'''
 
* Misc Logistics:
 
** Mr. Bui has A Lunch (1st Lunch) on W-days
 
** Mr. Bui has 4th period planning on L-Days (so whatever lunch he feels like having that day)
 
* [[IB Computer Science II Syllabus]]
 
** Complete online syllabus agreement form by Monday (9/11/17)
 
** Homework posted on Canvas?
 
* Java Review - [http://introcs.cs.princeton.edu/java/11cheatsheet/ Java Cheatsheet]
 
** Introduction to NetBeans IDE
 
** Simple main method
 
** Variables, types, values
 
** Keyboard input w/ Scanner
 
** Circle circumference and area calculator
 
** if statements
 
** while and for loops
 
* 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 [http://introcs.cs.princeton.edu/java/11cheatsheet/ Java Programming Cheatsheet]
 
 
 
'''Homework:'''
 
* Check Canvas!
 
 
 
== Tuesday (9/5/17) ==
 
'''Agenda:'''
 
* Introductions
 
* [[IBCS2 Summer Assignment]]
 
** Submit via '''Canvas''' by the Monday (9/11/17)
 
* [https://apsva.instructure.com/ APS Canvas]
 
** First time for everybody!
 
** Try logging in now...
 
** What do you see?
 
 
 
'''Homework:'''
 
* [[IBCS2 Summer Assignment]]  
 
** Submit via '''Canvas''' by the Monday (9/11/17)
 
* Syllabus
 
*# Go to Syllabus (on the left)
 
*# Read it
 
*# Complete the agreement form with your parent (you will need your APS Google login)
 
  
 
== Archives ==
 
== Archives ==
 +
* [[IBCS2 - 1718 - October]]
 +
* [[IBCS2 - 1718 - September]]
 
* [[IBCS2 Summer Assignment]]
 
* [[IBCS2 Summer Assignment]]
 
* [[IBCS2 - 1617]]
 
* [[IBCS2 - 1617]]

Revision as of 11:38, 20 November 2017

Monday - Tuesday (11/20/17 - 11/21/17)

Agenda:

  • TURN IN PERMISSION SLIPS! (caps are intentional to convey yelling)
  • Return Node Quiz
    • Node Quiz retakes
  • Complete and demo Java - Dynamic Stack Assignment
    • If you have not, then complete it over Thanksgiving Break

Thursday (11/16/17)

Agenda:

Monday - Wednesday (11/13/17 - 11/15/17)

Agenda:

Monday - Thursday (11/6/17 - 11/9/17)

Agenda:

Wednesday - Friday (11/1/17 - 11/3/17)

Agenda:

Archives