Difference between revisions of "IB Computer Science II"

From WLCS
(Redirected page to IB Computer Science 2)
 
(354 intermediate revisions by the same user not shown)
Line 1: Line 1:
−
'''Welcome to the IB Computer Science II Homepage!'''
+
#REDIRECT [[IB Computer Science 2]]
−
 
 
−
You may find the old IBCS2 website here: [http://www.paulbui.net/wl/cs2 IBCS2_0708]
 
−
 
 
−
== Thursday (9/25/08) ==
 
−
# Download [[Media:LinearSearch.java]]
 
−
# Fill in the commented parts of LinearSearch.java and demo a working linear search to Mr. Bui
 
−
# Linear Search performance evaluation
 
−
* What is the best case scenario? i.e. What is the minimum # of comparisons?
 
−
* What is the worst case scenario? i.e. What is the maximum # of comparisons?
 
−
* What is the average # of comparisons?
 
−
 
 
−
 
 
−
== Wednesday (9/24/08) ==
 
−
* Demo missing assignments
 
−
* Dossier
 
−
** Past examples
 
−
** Work on your Analysis of the Problem section
 
−
 
 
−
== Back to School Night ==
 
−
* [[Media:B2snIBCS2.ppt]]
 
−
 
 
−
== Monday - Tuesday (9/22/08 - 9/23/08) ==
 
−
'''Warmup:'''
 
−
* Assume you have the following integers: 5, 2, 3, 8, 4
 
−
* What are the steps to selection sort the integers?  Show the movement of the integers.
 
−
* '''What are the steps to bubble sort the integers?  Show the movement of the integers.'''
 
−
 
 
−
'''Agenda:'''
 
−
* Demo SelectionSort.java to Mr. Bui
 
−
* Introduction to Bubble Sort
 
−
# Initialize the front to be the top or beginning of the array
 
−
# Now go to the bottom/end of the array
 
−
# Compare the two adjacent elements to see if they are in proper sequential order
 
−
## Swap the elements if they are out of order (bigger number to the left of smaller number)
 
−
# Move to the next pair of adjacent elements/numbers
 
−
# Repeat steps 3 and 4 until the smallest number has "floated" to the top/front
 
−
# After you traverse the entire array
 
−
## Move the front so that the sorted numbers are ignored
 
−
## Go back to the end of the array
 
−
## Repeat steps 2 through 6 for the unsorted part of the array
 
−
* [http://web.engr.oregonstate.edu/~minoura/cs162/javaProgs/sort/BubbleSort.html Bubble Sort Animation]
 
−
* Download [[Media:BubbleSort.java]]
 
−
** Fill in the commented parts of the BubbleSort.java file. Where there is a comment, you need to write code.
 
−
** Demo to Mr. Bui at the end of class or at the beginning of class tomorrow
 
−
* Introduction to Program Dossier
 
−
** [[Media:CriterionA1_problemAnalysis.doc]]
 
−
** 1st rough draft of Analysis of the Problem due Monday (9/29/08)
 
−
 
 
−
'''Assignment:'''
 
−
* Verify that you have Java and JCreator installed on your home computer.
 
−
 
 
−
== Friday (9/19/08) ==
 
−
* Introduction to Selection Sort
 
−
# Find the smallest element
 
−
# Move to the front of the array (swap with front)
 
−
# Repeat Steps 1&2, but ignoring the sorted front
 
−
* [http://web.engr.oregonstate.edu/~minoura/cs162/javaProgs/sort/SelectSort.html Selection Sort Animation]
 
−
* [http://www.cs.ust.hk/faculty/tcpong/cs102/summer96/aids/select.html Another Selection Sort Animation]
 
−
* Download [[Media:SelectionSort.java]]
 
−
** Fill in the commented parts of the SelectionSort.java file. Where there is a comment, you need to write code.
 
−
** Demo to Mr. Bui at the end of class or at the beginning of class on Monday
 
−
 
 
−
== Wednesday - Thursday (9/17/08 - 9/18/08) ==
 
−
'''Agenda:'''
 
−
* [[AddressBook class lab assignment]] is due at the end of the day tomorrow.
 
−
* Your AddressBook demo should use the menu system you created in the warmup yesterday
 
−
** When the user selects to ADD a Contact, you should prompt them for a first name, last name, phone, and address.
 
−
** You should then create a new Contact
 
−
** Add the Contact to your AddressBook using the AddressBook's add() method
 
−
* The PRINT menu choice should print the entire AddressBook using the print() method
 
−
* Make sure your menu runs again after the user makes a choice (HINT: use a loop somewhere)
 
−
 
 
−
== Tuesday (9/16/08) ==
 
−
'''Warmup:'''
 
−
* You will be creating a user interface menu for use with your AddressBook
 
−
* Open / create your AddressBook's main method
 
−
* Print out a message that explains the program (e.g. "Welcome to YOUR_NAME's address book!")
 
−
* Print out a menu with the following options:
 
−
 
 
−
<pre>
 
−
(a)dd to address book
 
−
(p)rint address book
 
−
(q)uit
 
−
 
 
−
What would you like to do?
 
−
</pre>
 
−
 
 
−
* You should prompt for input after the menu is printed.  Review [[Media:JavaIOExample.java]] for examples of input/output
 
−
* If the user inputs 'a', then print a message that says "USER SELECTED ADD"
 
−
* If the user inputs 'p', then print a message that says "USER SELECTED PRINT"
 
−
* If the user inputs 'q', then print a message that says "USER SELECTED QUIT"
 
−
 
 
−
'''Agenda:'''
 
−
* Demo JCreator
 
−
* Add a String address attribute to your Contact class
 
−
* Demo your Person, Car, and Contact classes to Mr. Bui (LATE)
 
−
* [[AddressBook class lab assignment]]
 
−
 
 
−
== Monday (9/15/08) ==
 
−
* Demo your Person, Car, and Contact classes to Mr. Bui
 
−
* AddressBook overview
 
−
* [[AddressBook class lab assignment]]
 
−
 
 
−
== Wednesday - Friday (9/10/08 - 9/12/08) ==
 
−
* Receive textbooks
 
−
** Write your name on the inside cover
 
−
** Tell Mr. Bui your number
 
−
* Demo to Mr. Bui your Person, Car, and Contact classes
 
−
* Complete Lab 14 in [http://www.eimacs.com eimacs]
 
−
* Complete Test 12 in [http://www.eimacs.com eimacs]
 
−
 
 
−
== Monday - Tuesday (9/8/08 - 9/9/08) ==
 
−
 
 
−
'''Agenda'''
 
−
* [[Media:IntroClasses.ppt]]
 
−
* [[Person class lab assignment]]
 
−
* [[Car class lab assignment]]
 
−
* [[Contact class lab assignment]]
 
−
 
 
−
== Friday (9/5/08) ==
 
−
'''Warmup'''
 
−
Determine whether or not each of the following lines result in ''x'' evaluating ''true'' or ''false'':
 
−
 
 
−
<source lang="java" line>
 
−
boolean x;
 
−
x = 50 > 20;
 
−
x = !x;
 
−
x = true && false;
 
−
x = false || false;
 
−
x = false || false || false || false || false || true;
 
−
x = true && true && true && false;
 
−
x = x || !x;
 
−
x = x && !x;
 
−
</source>
 
−
 
 
−
'''Agenda'''
 
−
* A gentle re-introduction to Java
 
−
** [[Media:IntroJava.ppt]]
 
−
** [[Media:IntroJava2.ppt]]
 
−
** [[Media:IntroClasses.ppt]]
 
−
** [[Media:IntroObjects.ppt]]
 
−
** JCreator Demo
 
−
** [[Person class lab assignment]]
 
−
 
 
−
'''Assignment'''
 
−
* [[How to install Java on Windows]]
 
−
* [[How to install JCreator]]
 
−
* Test your Java and JCreator installs by creating, compiling, and executing a Hello, World! program
 
−
 
 
−
== Tuesday - Thursday (9/2/08 - 9/4/08) ==
 
−
* Introductions
 
−
* Syllabus
 
−
* Name cards
 
−
* Lab setup/config
 
−
* [http://spreadsheets.google.com/viewform?key=p6_k1SMbS2zvMHJNJBBkFPA Student Survey]
 
−
** Fill out and submit
 
−
** Share several snippets with class
 
−
* On-line Resources
 
−
** [http://www.paulbui.net/wl/cs2 Old IBCS2 website]
 
−
** [http://www.eimacs.com EIMACS] - test your login
 
−
** [http://www.turingscraft.com Turingscraft] - login coming soon!
 
−
* Java Review
 
−
# Write a Hello, world! program ( Hint: [[Java program template]] )
 
−
## Create a new Java program using JEdit or whatever editor you prefer
 
−
## Use the Java program template as a guide
 
−
## Insert your code
 
−
## Compile and execute your code
 
−
### Open terminal
 
−
### Navigate to your Java file
 
−
### ''javac FILENAME''
 
−
### Execute your code: ''java PROGRAM_NAME''
 
−
# Write a program that prints Hello, world 20 times
 
−
# Write a program that prints Hello, world infinite times
 
−
* Program dossier introduction
 
−
** [http://www.ib-computing.com/java/dossier/choices.html IB Computing Dossier suggestions]
 

Latest revision as of 11:21, 24 August 2010