Intro CS Assignments
Assignments by week:
Fall Term: 1 2 3 4 5 6 7 8 9
Winter Term:
Spring Term:
Monday, November 6
Description
Wheel of Doom
Homework
  • Your final lab of the term is to create a Wheel Of Doom (like I use in class). It should "randomly" (see below for why I put that in quotes) pick a student from the class and show their name and picture on the screen. Here are the details:

    • Every student has a name (e.g., "Joe Student"), an id (e.g., "20wod"), and an image.
    • I will provide pictures for each student, you may rename them if you wish.
    • Your program should start with a blank screen (or a screen with instructions). When the user presses the mouse, it should select one of the students "randomly" and display their name and picture on the screen. It can do this on "press" or "release" and can be instantaneous (no animation).

    Once you finish the basic requirements above, you can move on to adding bonus features. You should add at least one feature that goes beyond the minimum requirements above, but you may add several features if you wish (you will receive a limited amount of extra credit for multiple bonus features):

    • Make the "random" selection process "more fair" by making sure it doesn't pick the same person twice in a row. Or, make sure it doesn't pick again from the last 3 people picked (or whatever number seems fair to you).
    • Add animation to the selection process.
    • Add sound to the selection process (I've always liked the "god machine" sound effect from the Daily Show as a "selection" noise). You'll want to read up on the SoundFile library in Processing and ask me for help to get this working.
    • Allow the user to select/deselect who is included in the selection process when the program starts (handy for taking out kids who are absent).
    • Animations/effects/sounds for students getting questions "right" or "wrong".
    • Other features you might think are fun...

    Final version is due Friday at the beginning of class. You'll have some time to work on it during class this week, but I'm expecting that you'll complete most of it outside of class as homework. Don't wait until the last minute!

Tuesday, November 7
Description
Wheel of Doom
Homework
  • Continue working on Wheel of Doom lab. Final version is due Friday at the beginning of class.
  • Review previous assignments and tests and bring any questions to class. We do not have a scheduled review time before your final so the best time to ask questions is during class. See Friday's homework for a list of potential exam topics.
Thursday, November 9
Description
Wheel of Doom
Homework
  • Finish Wheel of Doom lab. Final version is due Friday at the beginning of class.
  • Review previous assignments and tests and bring any questions to class. We do not have a scheduled review time before your final so the best time to ask questions is during class. See Friday's homework for a list of potential exam topics.
Friday, November 10
Description
Review
Homework
  • Final exam is Tuesday, November 14, at 8:00am in Centurion 103/105 (Conflict Exam period). We do not have a scheduled review session; if you have questions please email me or visit me in my office.
  • Anything we've covered this term is fair game on the exam. Here is a short list of topics to get you started on your studying... it's not meant to be an exhaustive list!

    • Basic program structure (setup(), draw(), mousePressed(), etc)
    • Basic drawing (rect, ellipse, line)
    • Boolean expressions (&&, ||, !, <, >, etc)
    • Conditionals (if-then-elseif-else)
    • Writing functions with return types and parameters (I will give you a description of the function, and you will need to write it)
    • Nested conditionals (ifs inside of other ifs)
    • Primitive types (boolean, int, float); difference from other types
    • Arithmetic expressions (+ - * / and of course %)
    • Using "println()"
    • Random numbers
    • Colors
    • While and for loops, including nested loops
    • Arrays (single-dimensional only), and looping over arrays
    • Recursion and recursive solutions to problems

    Don't forget to look over your homeworks, labs, and tests for more studying ideas!