Difference between revisions of "IB Computer Science 1"

From WLCS
 
Line 1: Line 1:
== Tuesday (2/1/11) ==
+
== [[IBCS1 - Archives]] ==
'''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.
 
 
 
== 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]]
 
 
 
== 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
 
** [[Media:Strings_Python.ppt]]
 
** [[Python String Exercises]]
 
 
 
== 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 [http://openbookproject.net/thinkCSpy/ch07.html 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?
 
 
 
<syntaxhighlight lang="Python">
 
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()
 
</syntaxhighlight>
 
 
 
'''Agenda:'''
 
* Complete and demo [[Robot game]].  Due by the end of the week.
 
* Work on [[Dodge game]]
 
* Begin reading and working through [http://openbookproject.net/thinkCSpy/ch07.html 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
 
** [[Media:2ndQExamReview.txt]]
 
* 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
 
* 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:'''
 
* [[Robot game]]
 
* [[Dodge game]]
 
 
 
== Thursday - Friday (12/23/10 - 12/31/10) ==
 
* Non-denominational winter break
 
 
 
== Wednesday (12/22/10) ==
 
* [[Robot game]]
 
* [[Dodge game]]
 
 
 
== 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 [http://openbookproject.net/thinkcs/python/english2e/ch08.html Case Study: Catch]
 
# Make sure you understand how the code works
 
# Comment sections of the code to explain what those lines do
 
 
 
'''Agenda:'''
 
* [http://www.openbookproject.net/thinkcs/python/english2e/app_b.html GASP Reference]
 
* Begin making [[Pong]]
 
 
 
== Thursday (12/2/10) ==
 
'''Agenda:'''
 
* [http://openbookproject.net/thinkcs/python/english2e/ch08.html Case Study: Catch] walkthrough
 
** Animation
 
** Bouncing
 
** Keyboard control/input
 
** Collision detection
 
** Displaying text
 
* Begin making pong, found at the bottom of [http://openbookproject.net/thinkcs/python/english2e/ch08.html Case Study: Catch]
 
 
 
== Archives ==
 
* [[IBCS1 - 1011 - November]]
 
* [[IBCS1 - 1011 - October]]
 
* [[IBCS1 - 1011 - September]]
 

Latest revision as of 08:28, 13 September 2023