Intro CS Assignments
Assignments by week:
Fall Term: 1 2 3 4 5 6 7 8 9
Winter Term: 1 2 3 4 5 6 7 8 9 10 11 12
Spring Term: 1 2 3 4 5 6 7 8 9
Monday, May 21
Description
No Class (Post-Prom Sleep-In)
Homework
  • Finish commenting your code, archive it, and submit it to me before the start of next class.
Tuesday, May 22
Description
AnnoyBot Presentations
Homework
  • Begin reviewing for your exam (see below for topics). Come to class with questions to review.
Thursday, May 24
Description
Clean Up
Homework
  • We will have a review session in the library on Monday from 7:00 - 7:45pm.
  • Notes about the exam:

    • Per instructions from the Academic Dean, this exam is meant to cover the Spring term of this year. You should be prepared to demonstrate robotics concepts that we've covered all term. That said, the basic concepts we've covered all year are fair game on the exam. This includes things like loops, conditionals, and variables. They are the same in both Processing and Java.
    • The purpose of the exam is to test both programming facts and conceptual understanding. A portion of the exam (multiple-choice and short-answer) will be closed-book, and another portion (longer, more open-ended) is open-book/open-note. For the closed-book portion, you will not have access to any other materials. Once you turn that section in, you may begin on the open-note section and refer to past assignments and the APIs for the languages we're using. You may not consult other humans or use source code from other programs that you did not write at any time during the exam.
    • As we'll have packed up the Legos, the entire exam will be pencil-and-paper. You may use your computer for the open-book portion, but may not use Processing or Eclipse to test your answers.
  • Topics for the exam:

    • Expressions
      • primitive types: int, float/double, boolean
      • delcaration and initialization of variables
      • arithmetic expressions (including difference between floating-point and integer math): + - / * and %
      • boolean expressions, relational operators (<, >, ==, !=), compound expressions, || and &&
      • arrays
    • Control structures
      • conditional (if, else if, else)
      • while loops
      • for loops
      • nested loops
    • Functional decomposition
      • calling methods
      • writing methods (names, return types, parameters)
      • recursion
    • leJOS
      • initialize and fetch samples from sensors
      • initialize and run motors
      • gearing, power, torque
      • handle keypresses, including waiting for keys to be pressed
      • delay execution of code for a period of time
      • immediateReturn
  • The exam is on Tuesday, May 29 at 8:00am in Centurion 103/105.