|
|
Line 1: |
Line 1: |
− | == Tuesday - Monday (3/20/12 - 3/28/12) == | + | == [[IBCS1 - Archives]] == |
− | '''Agenda:'''
| |
− | * 3rd Quarter Exam Project
| |
− | ** You will design and implement a database program of your own choosing
| |
− | ** You will need to design the menu system
| |
− | *** Add
| |
− | *** Remove
| |
− | *** Edit
| |
− | *** Print all
| |
− | *** Search for one
| |
− | *** Calculations of some sort
| |
− | ** You will need to design the modules to be used
| |
− | *** Data container classes
| |
− | *** Menu system
| |
− | ** You will implement the designed program and all of its necessary classes
| |
− | * '''Deadline: Wednesday (3/28/12)'''
| |
− | *** You will need to print out all your documentation and code
| |
− | | |
− | == Friday (3/16/12) ==
| |
− | '''Agenda:'''
| |
− | * Designing and implementing a database solution
| |
− | *# Front-end vs. Back-end review
| |
− | * Documentation
| |
− | ** User documentation (manual)
| |
− | ** Design documentation
| |
− | ** System documentation
| |
− | * System documentation
| |
− | *# Create flow chart that illustrates the options and flow of the menu system (Don't forget to show that it loops!)
| |
− | *# Create a chart that has each class/file as a box and link them to show how they interact
| |
− | *# Create a set of tables that describes each class/file that we created
| |
− | *#* Class name - describe the purpose of the class
| |
− | *#* Attributes - describe each attribute
| |
− | *#* Methods - describe each method and what it does
| |
− | * Go through and comment your code
| |
− | ** Put a commented header at the top of each file
| |
− | ** The header should have the filename, purpose of the file, and author's name (you!)
| |
− | * Print out and put everything together into one packet (menu flow chart, modular organization, all the code)
| |
− | | |
− | == Monday - Wednesday (3/12/12 - 3/14/12) ==
| |
− | '''Agenda:'''
| |
− | * Demo Gradebook
| |
− | * Add a (s)ort feature to your gradebook
| |
− | * Searching and editing students
| |
− | | |
− | == Tuesday - Thursday (3/6/12 - 3/8/12) ==
| |
− | '''Agenda:'''
| |
− | * Gradebook System
| |
− | ** Course class
| |
− | ** Student class
| |
− | * Gradebook Menu
| |
− | *# Add a menu system to our gradebook example. The menu will allow the teacher to add students to a list of students
| |
− | *# Print out a menu with the following options
| |
− | *#* (a)dd student
| |
− | *#* (r)emove student
| |
− | *#* (p)rint student list
| |
− | *#* (q)uit
| |
− | *# Prompt the user what they would like to do
| |
− | *# Check what they input and then perform the task they want to do
| |
− | *#* If they want to add a student, then you must create a new student and prompt the user for a name and id number. You should then add it to your list of students
| |
− | *#* If they want to remove a student, then you must prompt the user for a name or id number. You must then use a linear search to find the student in the list. (Hint: Look at [[Advanced Python List Exercises]]). After finding the student, then you can '''del''' it from the list. You should also print a message in case the student was not found
| |
− | *#* If they want to print the student list, then write a loop that prints all the students in the list
| |
− | *#* If they want to quit, then break out of the loop
| |
− | *# Continually repeat the entire menu system forever
| |
− | | |
− | == Friday (3/2/12) ==
| |
− | '''Agenda:'''
| |
− | * Rectangle class practice
| |
− | ** Attribute(s): width, height
| |
− | ** Method(s):
| |
− | *** __init__(self, width=0, height=0)
| |
− | *** __str__(self) - returns a string like "Rectangle WIDTH by HEIGHT"
| |
− | *** getWidth(self) - returns the width
| |
− | *** setWidth(self, newWidth) - saves newWidth into self.width
| |
− | *** getHeight(self) - returns the height
| |
− | *** setHeight(self, newHeight) - saves newHeight into self.height
| |
− | *** getArea(self) - returns the area of the rectangle
| |
− | *** isSquare(self) - returns True if the width is equal to the height, otherwise return False
| |
− | | |
− | * Gradebook System
| |
− | | |
− | == Monday - Wednesday (2/27/12 - 2/29/12) ==
| |
− | '''Warmup:'''
| |
− | * What is Object-Oriented Programming? Describe in layman's terms.
| |
− | | |
− | '''Agenda:'''
| |
− | * Object-Oriented Programming Review
| |
− | * Parts of a class
| |
− | ** Class declaration at the top: '''class CLASSNAME:'''
| |
− | ** Initializer: '''def __init__(self, PARAMS):'''
| |
− | *** Give default or initialize values of attributes
| |
− | ** Methods: '''def METHODNAME(self, PARAMS):'''
| |
− | *** A function inside a class
| |
− | * Python Class References
| |
− | ** [http://openbookproject.net/thinkcs/python/english3e/classes_and_objects_I.html HTTLACS: Classes: Part 1]
| |
− | ** [http://openbookproject.net/thinkcs/python/english3e/classes_and_objects_II.html HTTLACS: Classes: Part 2]
| |
− | ** [http://docs.python.org/py3k/tutorial/classes.html Python Classes]
| |
− | * Class-wide construction of an object-oriented program
| |
− | ** Point class example review
| |
− | * Circle class practice
| |
− | ** Attribute(s): radius
| |
− | ** Method(s):
| |
− | *** __init__(self, radius=0)
| |
− | *** __str__(self)
| |
− | *** getRadius(self) - returns the radius of the circle
| |
− | *** setRadius(self, newRadius) - changes the self.radius to newRadius
| |
− | *** getDiameter(self) - returns the diameter of the circle
| |
− | *** getArea(self) - returns the area of the circle
| |
− | * Rectangle class practice
| |
− | ** Attribute(s): width, height
| |
− | ** Method(s):
| |
− | *** __init__(self, width=0, height=0)
| |
− | *** __str__(self) - returns a string like "Rectangle WIDTH by HEIGHT"
| |
− | *** getWidth(self) - returns the width
| |
− | *** setWidth(self, newWidth) - saves newWidth into self.width
| |
− | *** getHeight(self) - returns the height
| |
− | *** setHeight(self, newHeight) - saves newHeight into self.height
| |
− | *** getArea(self) - returns the area of the rectangle
| |
− | *** isSquare(self) - returns True if the width is equal to the height, otherwise return False
| |
− | * Create a Student class with the attributes on the board
| |
− | | |
− | == Thursday (2/23/12) ==
| |
− | '''Agenda:'''
| |
− | * List, nested list, and for loop quiz
| |
− | * Demo missing assignments
| |
− | * Introduction to Object-Oriented Programming
| |
− | ** [http://openbookproject.net/thinkcs/python/english3e/classes_and_objects_I.html HTTLACS: Classes]
| |
− | ** [http://docs.python.org/py3k/tutorial/classes.html Python Classes]
| |
− | * Class-wide construction of an object-oriented program
| |
− | ** Point class example
| |
− | ** Circle class example
| |
− | ** Rectangle class example
| |
− | ** Create a Student class with the attributes on the board
| |
− | | |
− | == Tuesday (2/21/12) ==
| |
− | '''Warmup:'''
| |
− | * Assume you have a '''matrix = [ [2, 4, 6], [1, 3, 5], [0, 1, 2] ]'''
| |
− | * Write a nested loop that sums all the elements
| |
− | | |
− | '''Agenda:'''
| |
− | * Complete Nested List demos (multiplying matrices is optional)
| |
− | * Nested Loops review
| |
− | * Pig Latin Translator w/ Lists
| |
− | * List Surprise
| |
− | * Closed-book Quiz on Thursday (2/23/12)
| |
− | ** Lists
| |
− | ** Nested Lists
| |
− | ** String Lists
| |
− | ** for loops
| |
− | | |
− | == Tuesday - Thursday (2/14/12 - 2/16/12) ==
| |
− | '''Warmup:'''
| |
− | * Assume you are given the following code:
| |
− | | |
− | <syntaxhighlight lang="Python">
| |
− | a = ???
| |
− | b = ???
| |
− | | |
− | #Using an additional variable, swap the values in a and b (even though you don't know what they are)
| |
− | </syntaxhighlight>
| |
− | | |
− | '''Agenda:'''
| |
− | * Complete [[Advanced Python List Exercises]]
| |
− | * Introduction to Nested Lists
| |
− | ** Nested List Practice
| |
− | ** Application in matrices
| |
− | ** Other applications
| |
− | * Nested List Practice
| |
− | *# Create a program that calculates the determinant of a 2x2 matrix. Be sure to test your program.
| |
− | *# Create a program that calculates the determinant of a 3x3 matrix. Be sure to test your program.
| |
− | *# Create a program that multiplies two matrices against each other
| |
− | | |
− | == Wednesday - Friday (2/8/12 - 2/10/12) ==
| |
− | '''Warmup:'''
| |
− | * [http://codingbat.com/prob/p108886 Python > List-2 > sum67]
| |
− | | |
− | '''Agenda:'''
| |
− | * Demo [[Advanced Python List Exercises]] through Min/Max
| |
− | * Demo [[Turtle - List Assignment]]
| |
− | * Complete [[Advanced Python List Exercises]]
| |
− | * For loop
| |
− | | |
− | == Monday (2/6/12) ==
| |
− | '''Warmup:'''
| |
− | * On a separate sheet of paper, write out the algorithm to find the minimum number in a list of numbers
| |
− | | |
− | '''Agenda:'''
| |
− | * [[Advanced Python List Exercises]]
| |
− | ** You should be completed through Min/Max
| |
− | * [[Turtle - List Assignment]]
| |
− | | |
− | == Tuesday - Thursday (1/31/12 - 2/2/12) ==
| |
− | '''Warmup:'''
| |
− | * Create a Python Turtle program that tells the turtle to move forward 100
| |
− | * Don't forget about exitonclick()
| |
− | | |
− | '''Agenda:'''
| |
− | * [[Advanced Python List Exercises]]
| |
− | ** You should be completed through Min/Max
| |
− | * [[Turtle - List Assignment]]
| |
− | | |
− | == Archives ==
| |
− | * [[IBCS1 - 1112 - January]]
| |
− | * [[IBCS1 - 1112 - December]]
| |
− | * [[IBCS1 - 1112 - November]]
| |
− | * [[IBCS1 - 1112 - October]]
| |
− | * [[IBCS1 - 1112 - September]]
| |