back to the APCS Homepage | This page was created through a combination of HTML, CSS, and Javascript.

Class # Date Daily Agenda Homework
1 9/5/2008

Welcome back!
- Syllabus

Take a look at the Java Curriculum

Discuss the Summer Assignment

Open BetterTurtle, look at:
- Reserved words
- Method signatures
- Instance/Class variables

Read 1.1-1.4 and 1.7, 1.8 in text
Define the vocabulary words using this sheet

2 9/9/2008

Go over the Vocabulary homework
Chapter 1 Question Sheet (Type your answers, then print it out)
Short quiz next class on Chapter 1.

Need help on the Summer Lab? Stay after today or Thursday. (Must get to me BY Friday)

  • Back to our good friend BetterTurtle
    • Look at the API of Turtle and Turtlet
    • Discuss static methods vs. inheritance
    • On paper, WRITE an application program that constructs a Turtle and slowly draws 5 red concentric circles with increasing radii (20, 40, ... 100) using a for/loop. Make the radii increment a variable set outside of the loop! Then, using the same Turtle, draw 5 blue concentric circles with decreasing radii (110, 90, ... 30) using a while loop. Again, make the decrement a variable.
  • Vocabulary
    • Objects, class, instance, reserved word, instance variable, class variable, signature, inheritance, method, static method, main, polymorphism
    Define the vocabulary words
    3 9/11/2008
    • Quiz on Chapter 1
    • Discuss the vocabulary homework
    • Continue with while loops
    • Discuss Do-While loops
    • Lab Assignment #1

    Read all of Chapter 2 in the text

    Quiz Next class on Chapter 2

    4 9/15/2008 Read 3.1 through 3.5 (pages 65 to 82)
    5 9/17/2008
    • Complete Lab Assignment #1
    • Show me when you are done - I will go over with you at your computer.
    • TEST NEXT CLASS on writing classes.
    Finish chapter 3 (3.6 to end) (p. 82 to 96)
    6 9/19/2008
    • Test #1 - Objects and Classes
    • Add to vocabulary
      • Primitive data type, class, parameter, accessor, modifier, declaration, assignment, reference
    • Java Review - A Powerpoint
      • Primitives: int, double, boolean
      • Accessors and modifiers
      • Subclasses
    Read 6.1 through 6.3 in the text
    7 9/23/2008
    • We will go over the tests next class (Mueller needs to take the exam.)
    • Continue with the Summer Assignments. (Need Beck's.)
    • Summer Assignment
      • Labs 1 and 2 dealt with statistics
      • Lab 3 dealt with dates
      • Lab 4 dealt with strings/palindromes
    • Take a look at Summer Labs 1 & 2; Add to your Utility class the following two methods:
      • countMins(int[] list) // returns the number of times the smallest element in the list occurs
      • allDifferent(int[] list) // returns true if there are no duplicates in the list, false otherwise
      • ArrayList getModes() // upgrade of the current one such that this will return ALL modes
      • Add a println to your main method in the App that will print the result of these method calls.

    Homework: In the AP-API, review the following classes

    -ArrayList, Double, Integer, Math, Object, Random, String, System

    -For each class, make a list of EACH METHOD that is new to you

    -Read through all the exceptions and note any questions

    8 9/25/2008
    • Go over the tests - Stat Sheet
    • Go over the API HW
    • Discuss utility (static) classes vs. object classes vs. application classes
    • Finish Summer Lab Additional Methods
    • Begin homework
    Finish reading chapter 6 (6.4 to the end)
    9 9/29/2008
    • Discuss utility (static) classes vs. object classes vs. application classes
    • Discuss class design
      • Kinds of instance variables
      • Kinds of methods
    • Write Lab #2: The Car Class
    Read Chapter 15 in the text about Exception Handling
    10 10/1/2008
    • Discuss Exceptions
    • Put Exceptions into our Car Class
    • Work on the Summer Lab Upgrade (countMins, allDifferent, getModes)
    • Show me your car and summer lab upgrades if complete

     

    Finish Car and Summer Lab Upgrades

    11 10/3/2008
    • Finish Summer Lab Upgrade
    • In BlueJ, create a new project called "Vehicle" in your labs folder.
    • Briefly look at interfaces and abstract classes
    Gather information for 20 vehicles (there will be overlap, but hopefully not too much). Type the file in notepad and save as "vehicleData.txt" Please use this format.
    12 10/7/2008
    • Design Discussion for the classes needed to keep inventory for a car dealership
    • Reports: all vehicles, vehicles within a particular category, number of vehicles, total cost, etc.
    • Ability to search for vehicles that satisify particular criteria (ie. efficiency > 20mpg, 4wd, price < $22g)
    • Place your vehicleData.txt file in your Vehicle Project folder
    • Discuss the structure of our new project and abstract vs. super classes
    • Discuss what informations is specific to the type of vehicle and what is general. (Ie. only a car should have a boolean convertible field.)
    • Decide on a small subset of data fields to include in our Vehicle class. Put in modifier (mutator) and query (accessor) methods for each field.
    • Brainstorm what reports/functionality our inventory program should have
    HOMEWORK
    • We will use a Utility class (with static methods). Think and write down the types of actions we would like our project to be capable of accomplishing. (Ie. what type of reports to generate.)
    • Write down IN SIMPLE ENGLISH what would be involved (ie. the process) to find the most expensive vehicle.
    13 10/9/2008
    • Create the Car, Truck, and SUV classes.
    • Write an application program (VehicleTest) to instantiate all three types of vehicles as three elements of a Vehicle[]. Be sure to put a toString() in Vehicle and print the vehicles in your App.
    • Create a Utility class and write a static method to print the data in the array.
      public static void printVehicleList(Vehicle[] theVehicles)
    • Look at the Scanner class and write a static method to read data from your file.
      public static Vehicles[] read(String filename, int size)
    Read 19.1 through 19.5 in the textbook

    * This reading covers the Selection and Mergesorts.

    14 10/14/2008

    - DO NOW (FOR LOOP Fun)
    - Make this application program work for Vehicle

    You will be adding a read method.

    Read 7.5 in the text (including ALL special sections) [loop invariants]
    15 10/16/2008 - Continue work on the Vehicle Project [Complete the read method - you can work together.]
    --> Copy in THIS CODE. Generate the functionality so that Phase 2 works. Then make Phase 3 work.
    Complete Phase 2 FOR HOMEWORK.
    It MUST be working by next class.
    16 10/21/2008 Complete Phase 3
    Look at sorting - Powerpoint
    Begin Sorting Activity
    Complete the two "Part 2" Questions on a typed sheet of paper. They will be graded.
    17 10/23/2008 Hand in your HW

    Complete the Sorting Activity
    Complete Phase 3 of the Vehicle Project if not yet done.
    18 10/27/2008

    Finish the looping activity (until 11:30am)

    Then the Cryptogram Lab

     
    19 10/29/2008

    Short Quiz on Looping next class
    Show me cryptogram lab

    Discuss searching (linear vs. binary)

    Finish the Sorting Activity

    Finish Ch. 19 (19.6 to the end)
    Topic is searching

    20 10/31/2008

    I NEED TO SEE
    - Cryptogram

    *Finish sorting activity*

    Continue with Vehicle
    --> Write the two sort methods

    # Add the following three methods to your Utility class

    * sortByPrice([], String dir); // if dir.equals("DESC"), print descending, else ASC
    * sortByName([], String dir); // Sort the following way: first by make, then model - model should always be alphabetical, but make will either be ASC or DESC
    * sortByEfficiency([], String dir); // use any algorithm you like

    # methods should return the array in the correctly sorted order
    # Print the returned sorted arrays in your VehicleTester App to test it.

    ***********10 Week Exam Next Class***********

    (Hand in HW on a sheet of paper with your name/date/Class #20 HW)

    Read Chapter 4 in the text (including all parts!)
    * Complete Exercises R4.1 to R4.4 and R4.6 to R4.9

    21 11/4/2008
    • 10 WEEK EXAM
    • At this point I must see Cryptogram!
    • [From Vehicle Project Homepage]
    • Create a new class in BlueJ called VehicleTesting2
    • Copy in this application program.
    • Make it work. :)
    Make the application program work that is on today's agenda.
    22 11/6/2008

    TODAY IS A PROGRAMMING DAY! (Yay!)

    I will help you as needed.

    • Write the method "public static Vehicle[] withEfficiency(double efficiency, Vehicle[] list) that uses a sequential search to return ALL vehicles with this efficiency (or null if none exist.)

      I will 'grade' your hw by giving you 15 minutes at the start of Monday's class to type in your answer. If it works, you successfully did your hw. If not, you did not.
    • CONFIRM YOU HAVE COMPLETED YOUR HW
    • Once done with those methods, add these to your Utility class.
    • Test them by adding calls to them in the application program.
      - insertOneByEfficiency()

    We will go over the Chapter 4 Questions

    Continue with Vehicle
    Additional Functions

    Watch this Powerpoint.
    Allow yourself 30 MINUTES to follow it. Focus on the selection and insertion sorts. Remember the way each one works. This powerpoint is on "Big O" notation.
    23 11/10/2008

    Type in your withEfficiency function

    Go over the Looping Test and First Quarter Test

    Discuss the Powerpoint.

    Ensure that your Vehicle Project has all these methods.

    A Exam - Test 1: 1-20 in the packet
    24 11/13/2008 Go over the tests
    Go over the HW
    Continue work on Vehicle
    FINISH VEHICLE
    25 11/17/2008

    FIRST HALF OF CLASS: Finish Vehicle*

    * I will be grading them over Thanksgiving Break

    # We are now going to begin a series of 'relatively quick' labs that will bring us to December break. Each day you will receive a sheet outlining the lab; what to do, when it's due, etc. Your HW each night, if nothing else, is to work on these labs to ensure they are completed by the due date.
    - Start Lab 3

    Finish Lab 3
    26 11/19/2008

    Do now on Loop Invariants

    - Recap of Vehicle/Big O Handout
    - Table of Big O Values

    Finish Lab 3

    Complete the Practice A Exam - Test 1
    (Questions 21-35 and the Part 2s [1, 2, 4] as well!)
    27 11/21/2008

    Go over the Practice Exam
    Part 2 Key

    Begin Lab #4: Permutation Generator

    Complete Lab #4
    28 11/25/2008
    • Chapter 18 in the text covers Recursion
    • Read 18.1 and 18.2 (pages 664 through 671)
    • Read 18.4 (678 to 684)
    • LOOK AT Exercise P18.13 - TOWERS OF HANOI
    • Think about the problem
    • Then Google Towers of Hanoi and look at some solutions and applets that show what is happening.
    29 12/2/2008

    Complete this checkup on ArrayList. (Loop/Iterate)

    • PP on Introduction to Recursion
    • Discuss calculating factorials
    • Discuss calculating the sum of 1-n
    • Work on Recursion Practice Lab
    • Finish Permutation Lab
    Additive Prime Lab
    30 12/4/2008

      DO NOW: Write a block of code that will create an ArrayList and fill it with 1000 random Integers between 100 and 250.

    • Finish the Recursion Practice Lab
    • Finish the Permutation Lab
    • Try the Knight's Tour Problem
    • Get the AP Review Book

     

    Questions 1-17 in the Review Book for Practice Exam A1

    This should be done on a SEPARATE SHEET.

    Please do not write in the book.

    31 12/8/2008

    Start the Case Study: GridWorld | Case Study Text | Case Study Powerpoint

    - Continue with the case study using Worksheet #1 as a guide.
    You will be using BugTest as your program.

    Finish the Bug exercises from the case study.

    Questions 1-21 in the Review Book for Practice Exam A1

    This should be done on a SEPARATE SHEET.

    Please do not write in the book.

    32 12/10/2008

    TAKE QUESTIONS about the HW (Questions 1-21)

    - Continue with Part 3 of the case study (page 15)
    -----> Follow it, completing the Do You Know sections as you come to them. Please type the question and the answer in a word document.

    Set 3, 4, 5, 6 --> We will see how far we get in class today.

    ArrayList Packet (complete me!)

     

    33 12/16/2008

    Go over the ArrayList Packet

    Continue with the Case Study
    Go over sets 3-5

    Complete Test #5 (will be graded)
    34 12/18/2008

    Continue with the Case Study
    - Take a Sheet for the Jumper Class
    Group 1: Jordan, Mike, Jacob, Andrew
    Group 2: Scott, Sam, Nick, Chris

    Complete the sheet with your group (each member should fill out his sheet.)
    Have me look it over - begin coding.

    [hand in test #5 --> go over at end of block]

    Complete Set 6 and read UP TO Part 4 of the study
    35 12/22/2008 FINISH PART 4 of the Case Study
    Recursion Packet
    36 1/5/2009

    DO NOW
    Please do both parts.

    Turn in the Recursion packet.

    We will then continue with the Case Study.

    2002 AP Exam Part 2 Question 2
    37 1/9/2009

    TO BE COMPLETED TODAY
    - Do you know? Sets 8 and 9
    - Exercises 1-3

    It is vital that you understand the infrastructure of the Case Study. Refer to the appendix when necessary. Have fun making these critters! :)

    Complete Exercise 4.
    MAKE SURE that you have completed these.

    Recursion Worksheet

    38 1/13/2009

    BACK TO THE CASE STUDY
    Exercises 1-6... we will get as far as we can.

    TBD...
    We (maybe...) :) will wrap up the Case Study today (To be revisited in March.)

    - Read 9.2 and ADVANCED TOPIC 9.1 on page 334/335
    - Read 9.6 to 9.8 in the text
    - Finish Exercises 1-3
    39 1/15/2009

    Finish Exercises 4-6

    Read pages 100-113 in your "Be Prepared" Review book
    40 1/20/2009

    DISCUSS THE CONCLUSION OF THE CASE STUDY.

    Begin Labs 5-7
    You can find the BlueJ file in the Public Folder.
    Complete Lab 5.

    Labs 5 and 6 should be finished by the end of today.
    Lab 7 will be handed in with your midterm
    TRACE THE CODE using the array {12, 9, 18, 31, 5} on paper with a PENCIL. Be clear and organized.
    Review for Midterm

     
    41 1/22/2009 12:35 to 2:15pm: MIDTERM EXAMINATION

    BE PREPARED REVIEW BOOK
    Practice Exam A1
    Questions 18-40
    Part 2s: 1 and 4

    Do these on a SEPARATE sheet of paper.
    (Not in the book.)

    CHECK YOUR ANSWERS.