Outline for April 17, 2014

Reading: text, § 5, 7
Due: April 17, 2014
  1. Why you don’t count with floating point numbers [roundoff.py]
  2. Simultaneous assignment [swap.py]
    1. Simple assignment: variable = expression
    2. Simultaneous assignment: variableA, variableB = expressionA, expressionB
  3. Decision structures
    1. If statement [if0.py]
    2. Executes once, based on condition
    3. Syntax
  4. Conditions
    1. Resolves to boolean value
    2. Literal booleans: True (1), False (0)
    3. Relational operators
      1. Use two arithmetic expressions connected with relational operatorsto create a boolean
      2. Relational operators: >, >=, <, <=, ==, \lstinline/!=/
      3. Precedence: resolved after arithmetic operators
      4. Connectives: and, or, not
      5. 6 > 2 + 3; "UCD" == "Sac State"
  5. Two-way decisions [if1.py]
    1. if-else statements
    2. One condition, two possible code blocks
    3. else very powerful when the positive condition is easy to describe but not the negative
  6. Multi-way decisions [if2.py]
    1. Can execute code based on several conditions
    2. elif (else if)
    3. else only reached if all previous conditions false
    4. Nested if statements
  7. Indefinite loops: execute until a general condition is false (while)
    1. while [while.py]
    2. Contrast with for
    3. break causes program to fall out of loop (works with for too) [loop1.py]
    4. continue causes program to start loop over immediately (works with for too) [loop1.py]
  8. Definite loops: execute a specific (definite) number of times (for)
    1. General form: for i in iterator
    2. Iterator is either list or something that generates a list
    3. Very common form: for i in range(1, 10)
  9. range() in detail [for.py]
    1. range(10) gives 0 1 2 3 4 5 6 7 8 9
    2. range(3, 10) gives 3 4 5 6 7 8 9
    3. range(2, 10, 3) gives 2 5 8
    4. range(10, 2, -3) gives 10 7 4
  10. Program: counting to 10 [toten.py]
  11. Program: sum the first 10 squares [sumsq.py]

You can also obtain a PDF version of this. Version of April 16, 2014 at 10:59PM