Outline for October 2, 2024

Reading: text, §2, 5; “Truth Tables: and, or, and not
Due: Homework 1, due October 14, 2024


  1. Decision structures [if0.py]
    1. If statement
    2. Executes once, based on condition
    3. Syntax

  2. Conditions
    1. Resolves to boolean value
    2. Literal booleans: True (1), False (0)
    3. Testable as true or false
    4. Relational operators
      1. Use two arithmetic expressions connected with relational operators to create a boolean
      2. Relational operators: >, >=, <, <=, ==, !=
      3. Precedence: resolved after arithmetic operators
      4. 6 > 2 + 3; "UCD" == "Sac State"

  3. Two-way decisions [if1.py]
    1. if …\ else statements
    2. One condition, two possible code blocks
    3. Syntax
    4. else very powerful when the positive condition is easy to describe but not the negative
    5. String comparison example

  4. Multi-way decisions [if2.py]
    1. Can execute code based on several conditions
    2. elif (else if)
    3. Syntax
    4. else only reached if all previous conditions false
    5. Nested if statements

  5. Conditional expressions [condexp.py]

  6. Iteration
    1. Definite loops: execute a specific (definite) number of times
    2. Indefinite loops: execute until a general condition is false

  7. While loops [while.py]
    1. Contrast with for
    2. break causes program to fall out of loop (works with for too) [loop1.py]
    3. continue causes program to start loop over immediately (works with for too) [loop1.py]

  8. For loops
    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. continue and break statements in loops [loop1.py]

  11. Exception Keyboard Interrupt — user hit the interrupt key (usually control-C)

  12. Program: counting to 10 [toten.py]

  13. Program: sum the first 10 squares [sumsq.py]

  14. Program: Fibonacci numbers [fib.py]

UC Davis sigil
Matt Bishop
Office: 2209 Watershed Sciences
Phone: +1 (530) 752-8060
Email: mabishop@ucdavis.edu
ECS 235A, Computer and Information Security
Version of October 1, 2024 at 10:02PM

You can also obtain a PDF version of this.

Valid HTML 4.01 Transitional Built with BBEdit Built on a Macintosh