Difference between revisions of "IB Computer Science 2"

From WLCS
 
Line 1: Line 1:
== Monday (9/28/10) ==
+
== [[IBCS2 - Archives]] ==
'''Warmup:'''
 
* Create a Java file with a main() called SelectionSort
 
* Create an array of 20 ints
 
* Use your own numbers in the array
 
 
 
'''Agenda:'''
 
* 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]
 
* [http://math.hws.edu/TMCM/java/xSortLab/ Sorting Animations]
 
* Download [[Media:SelectionSort.java]]
 
** Fill in the commented parts of the SelectionSort.java file. Where there is a comment, you need to write code.
 
 
 
== Friday (9/24/10) ==
 
'''Warmup:'''
 
* You will be creating a user interface menu for use with your AddressBook
 
* Open / create your AddressBook's main method
 
* Inside the main method, create an AddressBook variable:
 
 
 
<source lang="java">
 
AddressBook book = new AddressBook();
 
</source>
 
 
 
* 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
 
(f)ind a Contact
 
(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
 
*# Add '''import java.io.*;''' at the very top
 
*# Add '''private static BufferedReader stdin = new BufferedReader( new InputStreamReader( System.in ) );''' before main()
 
*# Add '''throws IOException''' so that main() reads like '''public static void main(String [] args) throws IOException'''
 
*# You may now use '''stdin.readLine();''' to read in a String
 
*# To compare Strings, use .equals() like so: '''myStr.equals("a")'''
 
* If the user inputs 'a', then print a message that says "USER SELECTED ADD"
 
* If the user inputs 'f', then print a message that says "USER SELECTED FIND"
 
* 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:'''
 
* Complete [[AddressBook class lab assignment]]
 
* Create the '''Contact remove(String fn, String ln)''' method for the AddressBook
 
*# Using a for loop, find the Contact that matches fn and ln, and save it in a variable
 
*# Once you have found the Contact, you should remember its index (location) in the array
 
*# Check if the Contact was found in the array
 
*## If it was found, you must use a loop to shift all the array elements down one index
 
*## HINT: myContacts[i] = myContacts[i+1] //where i is a loop counter
 
*# Be sure to set the last element to null (so that there isn't a duplicate Contact in the end)
 
*#* HINT: myContacts[size-1] = null;
 
*# Decrement size
 
*# Return the removed Contact
 
* Demo all assignments
 
 
 
'''Homework:'''
 
* Install the [http://www.oracle.com/technetwork/java/javase/downloads/jdk6-jsp-136632.html Java JDK] on your computer (be sure to choose your corresponding operator system)
 
* Install [http://www.eclipse.org/downloads/packages/eclipse-classic-360/heliosr Eclipse Classic] on your computer (be sure to choose your corresponding operator system on the right)
 
* Test it out, and let Mr. Bui know if you run into problems
 
 
 
== Wednesday (9/22/10) ==
 
'''Warmup:'''
 
* Begin working on the [[AddressBook class lab assignment]]
 
 
 
'''Agenda:'''
 
* Demo ArrayPractices and any other assignments
 
* [[AddressBook class lab assignment]]
 
 
 
== Monday (9/20/10) ==
 
'''Agenda:'''
 
* Demo [[Person class lab assignment]]
 
* Demo [[Car class lab assignment]]
 
* Demo [[Contact class lab assignment]]
 
* Review Arrays
 
** [[Media:IntroArrays.ppt]]
 
* Array practice activities
 
*# Create a new Java class named ArrayPractice1.  Create an array of 10 Strings (Use names of students in the room).  Using a for loop, print out all the Strings in the array.
 
*# Create a new Java class named ArrayPractice2.  Create an array of 10 integers (make a bunch of numbers up).  Using a for loop and an if statement, print print out only numbers greater than 10.
 
*# Create a new Java class named ArrayPractice3.  Create an array of 10 integers.  Using a for loop, calculate the sum and average.
 
* [[AddressBook class lab assignment]]
 
 
 
'''Homework:'''
 
* Install the [http://www.oracle.com/technetwork/java/javase/downloads/jdk6-jsp-136632.html Java JDK] on your computer (be sure to choose your corresponding operator system)
 
* Install [http://www.eclipse.org/downloads/packages/eclipse-classic-360/heliosr Eclipse Classic] on your computer (be sure to choose your corresponding operator system on the right)
 
* Test it out, and let Mr. Bui know if you run into problems
 
 
 
== Thursday (9/16/10) ==
 
'''Warmup:'''
 
* Be sure you have completed the [[Person class lab assignment]]
 
* If you have *not* completed it, then finish it for your warmup
 
* If you have already completed, then try the following warmup:
 
*# Review [[Media:JavaIOExample.java]]
 
*# In your Warmups project in Eclipse, create a new Java class named Warmup_9_16_10
 
*# Prompt the user for an int
 
*# Using an if statement, print out whether or not the user's number is positive or negative
 
 
 
'''Agenda:'''
 
* toString() methods
 
* Demo [[Person class lab assignment]]
 
* Demo [[Car class lab assignment]]
 
* Demo [[Contact class lab assignment]]
 
 
 
== Tuesday (9/14/10) ==
 
'''Warmup:'''
 
* Open Eclipse
 
* Create a new project named Warmups
 
* Create a new Java filed name Warmup9_14_10 (be sure to include the public static void main())
 
* Write a for loop that prints out all the even numbers from 100 DOWN to 0
 
 
 
'''Agenda:'''
 
* Create a new project named ClassesReview
 
* Create a new Java class named Circle
 
* Complete the Circle class with the following methods (You may use the auto-generating setter/getter feature!):
 
** Circle()
 
** getRadius()
 
** setRadius()
 
** getDiameter()
 
** getArea()
 
* Download [[Media:CircleMain.java]] to the src folder in your ClassesReview project (OR download and then import it through Eclipse)
 
* [[Person class lab assignment]]
 
* [[Car class lab assignment]]
 
* [[Contact class lab assignment]]
 
 
 
'''Homework:'''
 
* Install the [http://www.oracle.com/technetwork/java/javase/downloads/jdk6-jsp-136632.html Java JDK] on your computer (be sure to choose your corresponding operator system)
 
* Install [http://www.eclipse.org/downloads/packages/eclipse-classic-360/heliosr Eclipse Classic] on your computer (be sure to choose your corresponding operator system on the right)
 
* Test it out, and let Mr. Bui know if you run into problems
 
 
 
== Friday (9/10/10) ==
 
'''Warmup:'''
 
* Cram for Software Development Quiz
 
 
 
'''Agenda:'''
 
* Turn in any signed syllabi sheets
 
* Software Development Quiz
 
* Introduction to Eclipse/BlueJ/JEdit?
 
* Java Review...uh oh!
 
** semicolons!
 
** public static void main( String [] args );
 
** Hello, world! - printing / outputting to screen
 
** Prompting for input
 
** if statements
 
** while loops
 
** for loops
 
** classes, attributes, setters, & getters!
 
 
 
'''Homework:'''
 
* Install the [http://www.oracle.com/technetwork/java/javase/downloads/jdk6-jsp-136632.html Java JDK] on your computer (be sure to choose your corresponding operator system)
 
* Install [http://www.eclipse.org/downloads/packages/eclipse-classic-360/heliosr Eclipse Classic] on your computer (be sure to choose your corresponding operator system on the right)
 
* Test it out, and let Mr. Bui know if you run into problems
 
 
 
== Wednesday (9/8/09) ==
 
'''Warmup:'''
 
* List as many different places and/or ways to obtain information during the problem analysis phase of any project
 
 
 
'''Agenda:'''
 
* Turn in [[IBCS2 Summer Assignment]]
 
* Name cards
 
* Complete the [http://spreadsheets.google.com/viewform?key=p6_k1SMbS2zvMHJNJBBkFPA student survey]
 
* Introduction to Software Development
 
** [[Media:SoftwareDevelopment.ppt]]
 
* Software Development Quiz on Friday (9/10/10)
 
 
 
== Tuesday (9/7/09) ==
 
* Introductions
 
* Turn in [[IBCS2 Summer Assignment]]
 
* [[IB Computer Science II Syllabus]]
 
* Lab setup/config
 
** Login username is your first initial and lastname (e.g. pbui)
 
** Your password is your student ID number
 
** Go to System -> Preferences -> About Me -> Change Password
 
 
 
== Summer ==
 
* [[IBCS2 Summer Assignment]]
 

Latest revision as of 08:28, 13 September 2023