Outline for January 8, 2018

Reading: §1

  1. About the class
    1. Instructor
    2. Class web site, handouts
    3. Canvas and submitting homework
    4. Homework, grading, and extra credit
  2. What is a computer?
    1. Computer programs
    2. Execution
  3. Algorithms
    1. Precision and completeness
    2. What is computable
    3. What is intractable
  4. Programming languages
    1. High-level languages: semantics and syntax
    2. Low-level languages: assembly language, machine language
    3. Compilers, assemblers, interpreters
    4. Source code, object code
    5. Libraries
  5. Python
    1. What is Python?
    2. Why Python for this class?
  6. Python, files and shells
    1. Python: programming language that you use to tell the computer what to do
    2. Shell: what you can type Python statements directly into, to see what they do
    3. IDLE: the program that interprets Python statements (executes the Python program)
    4. File: type Python statements into this, and then have IDLE execute those statements by running the program in the file
  7. How to write a program; example is making change (see handout change-write)
    1. Goal and general algorithm idea
    2. Representing data and basic program structure
    3. Translating this into a programming-like language
    4. Translating that into Python: [change-write.py]
  8. First program: hello, world [hello0.py]
    1. Explain printing
    2. Demonstrate program in IDLE

Matt Bishop
Department of Computer Science
University of California at Davis
Davis, CA 95616-8562 USA
Last modified: January 10, 2018
Winter Quarter 2018
You can get a PDF version of this