IB Computer Science 1
From WLCS
Contents
- 1 Thursday (2/24/11)
- 2 Tuesday (2/22/11)
- 3 Thursday (2/17/11)
- 4 Tuesday (2/15/11)
- 5 Friday (2/11/11)
- 6 Wednesday (2/9/10)
- 7 Monday (2/7/10)
- 8 Wednesday (2/3/11)
- 9 Tuesday (2/1/11)
- 10 Friday (1/28/11)
- 11 Wednesday (1/26/11)
- 12 Monday (1/24/11)
- 13 Thursday (1/20/11)
- 14 Friday (1/14/11)
- 15 Wednesday (1/12/11)
- 16 Monday (1/10/11)
- 17 Thursday (1/6/11)
- 18 Tuesday (1/4/11)
- 19 Thursday - Friday (12/23/10 - 12/31/10)
- 20 Wednesday (12/22/10)
- 21 Tuesday - Monday (12/14/10 - 12/20/10)
- 22 Wednesday - Friday (12/8/10 - 12/10/10)
- 23 Monday (12/6/10)
- 24 Thursday (12/2/10)
- 25 Archives
Thursday (2/24/11)
Agenda:
- Strings quiz
Then
- Submit what you have already done on the HTTLCS Ch 9 exercises, even if incomplete.
- (Basic) Python List Exercises
- Advanced Python List Exercises
- Submit in separate files when complete. Please don't forget to put your last name in the filename.
- Reference: List presentation Lists_Python_updated.ppt
- Completed? Convert your Dodge and Robot games to list format.
Tuesday (2/22/11)
To start
- Work on your list exercises (see previous class's agenda).
Agenda:
- Review Strings - quiz this Thursday. 15 mins
- NOVA placement testing
Thursday (2/17/11)
Warmup:
- Create an empty list
- Append three numbers to the list
- Iterate through the list, printing each element's index next to its value
- e.g. "1: 101"
Agenda:
- Review Lists
Tuesday (2/15/11)
Warmup:
- Create a string named "String Review" and store it in a variable s
- print out a message that says, "s is # characters long" where ## should be a call to the len() function
- print out the first character in s by using the [] operator
- print out the last character in s by using the [] operator and len(s)-1
- Write a while loop that prints out every single character in s
Agenda:
- IBM Watson Day 1
- Introduction to Lists
Friday (2/11/11)
Warmup:
- Jot notes on the following questions:
- In Robot or Dodge, which objects were similar (e.g. part of a set)? Look back at your code if need be.
- When working with those objects (e.g. checking for a collision), what did you have to do?
- How would you pass the whole set of objects to a function?
- Can you think of any problems with these approaches?
Agenda
- Submit Dodge, whether or not it works.
- String exercises HTTLACS: Ch7 #5,6,7
- Demo string exercises
- Optional extension exercises from Ch 7: #1,2, 8-10
Wednesday (2/9/10)
Warmup:
- Create strings for the following: "Animation", "Collision", "Keyboard", "Bouncing"
- Write a program that prints the word that starts earliest in the alphabet
- Test it works
- Fix it so it works regardless of upper/lower case.
Hint: to convert a string to lower case, call 'stringVar.lower()' - Test it works by changing the case of some of the words
Agenda
- Submit Email Harvester to weblockers, if you haven't already - name it 'LAST-NAME_FIRST-NAME_HARVESTER.py'
- If you haven't already: Demo and submit Dodge. Today is the last class period to work on that (submit that too)
- Complete HTTLACS: Ch7 exercises #5,6,7
- Optional extension exercises from Ch 7: #1,2, 8-10
- If you've done everything, study lists HTTLACS Ch 9. Do exercises 1-5.
Monday (2/7/10)
Warmup: Let's practice writing GASP code from scratch (15 minutes)
- Create a new program named gaspReview.py
- Open a graphics window
- Display a circle on the screen and save it as a variable named c
- Be sure to create x and y variable coordinates for it
- Create a while loop that moves the circle across the screen to the right
- If the circle's x-coordinate moves beyond the right side, change it's x-coordinate to 0
- Randomize the y-coordinate between 0 and 600
- Test out the program
- Optional: if it runs, then try adding 2 more circles that have different speeds
Agenda
- Demo/submit Email Harvester, if you haven't already
- Demo Dodge (submit that too)
- Complete HTTLACS: Ch7 #7,8,9. Optional extensions: 1,2,5-10
Wednesday (2/3/11)
Warmup:
- Build up a string
s = ""
x = 0
while x < 5:
s = s + "a"
x = x + 1
print s
- What is printed out after the code executes? (DO NOT USE A COMPUTER)
Agenda:
- Demo E-mail Harvester Assignment - due by end of class today.
- Once you've demoed email harvester, return to Dodge game - due end of class Monday 2/7.
- If you've completed Dodge, complete HTTLACS: Ch7 #1,2, 5-10
- Finally, read 'Introduction to Lists': HTTLACS: Ch9 #1-5
- Closure
- Complete evaluation form
Tuesday (2/1/11)
Warmup:
- Create a small program that counts the number of vowels in a string.
- Example: "IceBerg" returns 3, and "IBM invented the mainframe!" returns 8.
- If you're done, extend the program to count consonants too.
- "IceBerg" has 4 and "IBM invented the mainframe!" has 14.
Agenda:
- Quick review of strings: refer to Media:Strings_Python.ppt if needed.
- Spend 30 minutes working on the E-mail Harvester Assignment
- Spend 30 minutes working on the Dodge game, if not complete.
- Closure: Complete evaluation form
Friday (1/28/11)
Snow day
Wednesday (1/26/11)
Warmup:
- Put the following sentence in a string:
- Maybe there are greater aggravations in your life, but the symmetrical-on-the-outside, asymmetrical-on-the-inside USB connector has been a source of frustration since its introduction.
- Write a small program that iterates through the string from the end and prints out every word in reverse order.
- Hint: keep track of the index of the current word's last letter.
- For bonus points, detect when words are separated by any punctuation mark, not just a space. Don't print the punctuation itself.
Agenda:
- Work on the E-mail Harvester Assignment - demo when complete.
- Once you're done, you can return to working on the Dodge game
Monday (1/24/11)
Warmup:
- Using python, create a string "Weʼre Building a Better Internet", and save it in variable sample.
- Write expressions that:
- Print the first character
- Print the third character (the apostrophe)
- Print the second from last character
- Print the word 'Building'
Agenda:
- Demo completed Dodge game
- Submit Python String Exercises if you haven't already done so.
- Work on the E-mail Harvester Assignment
Thursday (1/20/11)
Agenda:
- Demo completed Dodge game
- Introduction to strings
Friday (1/14/11)
Agenda:
- Complete and demo Robot game. Due by the end of the week.
- Work on Dodge game. Complete Dodge game by mid next week.
- Begin reading and working through HTTLACS: Ch 7 - Strings
- We will learn about Strings next week after the Dodge game
- If you are comfortable with Strings, complete the E-mail Harvester Assignment
- Complete HTTLACS: Ch7 #1,2, 5-10
Wednesday (1/12/11)
Warmup:
- Without using the computer, what does the following code display?
from gasp import *
begin_graphics(width=800, height=600, title="Question 23")
x = 0
while x < 100:
Circle( (400 + x, 300), x )
x = x + 10
update_when('key_pressed')
end_graphics()
Agenda:
- Complete and demo Robot game. Due by the end of the week.
- Work on Dodge game
- Begin reading and working through HTTLACS: Ch 7 - Strings
Monday (1/10/11)
Agenda:
- 2nd Quarter Exam
- Complete and demo Robot game. Due by the end of the week.
- Work on Dodge game
Thursday (1/6/11)
Agenda:
- 2nd Quarter Exam will be on Monday (1/10/11)
- 2nd Quarter Exam Review
- input, output, variables, and math expressions
- functions
- function definitions
- function header
- function body
- return keyword
- if statements
- comparison operators
- ==
- !=
- <
- >
- <=
- >=
- Boolean operators
- and
- or
- combining Boolean operators
- comparison operators
- while loops
- sequences
- break keyword
- GASP
- Catch/Follow game
- Exam Format:
- Open and closed-book sections
- Multiple-choice
- Short-answer code
- Identify syntax errors
- Identify the purpose of code sections
Tuesday (1/4/11)
Warmup:
- Write the while loop that generates the first N terms of the following sequence (prompt for N):
- 1, 2, 4, 7, 11, 16, 22, ...
Agenda:
Thursday - Friday (12/23/10 - 12/31/10)
- Non-denominational winter break
Wednesday (12/22/10)
Tuesday - Monday (12/14/10 - 12/20/10)
Agenda:
- Complete and demo Pong
- Robot game
Wednesday - Friday (12/8/10 - 12/10/10)
Warmup:
- Listed below are the major components of pretty much every type of game
- game loop
- game information and objects
- game rules/behavior
- refresh screen
- What is the programming construct/concept that we use for each of the above?
Agenda:
- Complete Pong
Monday (12/6/10)
Warmup:
- Copy, paste, and execute the code from Section 8.8 in Case Study: Catch
- Make sure you understand how the code works
- Comment sections of the code to explain what those lines do
Agenda:
- GASP Reference
- Begin making Pong
Thursday (12/2/10)
Agenda:
- Case Study: Catch walkthrough
- Animation
- Bouncing
- Keyboard control/input
- Collision detection
- Displaying text
- Begin making pong, found at the bottom of Case Study: Catch