** <font color="magenta">THERE WILL BE CLASS AND LAB TODAY!</font>
** <font color="magenta">THERE WILL BE CLASS AND LAB TODAY!</font>
−
** Discussion of the [http://maven.smith.edu/~jfrankli/111s08/pairProgramming2000.pdf pair-programming article] in class.<br /><center><videoflash>DbNoNoHyfDc</videoflash></center><br />
+
** Discussion of the [http://maven.smith.edu/~jfrankli/111s08/pairProgramming2000.pdf pair-programming article] in class.<br /><videoflash>DbNoNoHyfDc</videoflash><br />
** Continue with ATM/Teller machine example: The importance of pseudo-code, and going one step at a time.
** Continue with ATM/Teller machine example: The importance of pseudo-code, and going one step at a time.
Computer architecture: Processor and memory. Their different roles.
The concept of an imperative language.
Python is a language. Difference between interpreted languages and compiled languages.
Getting into the logic of programming. This week we'll "program as an exercise in logic intuition," rather than learning the basics.
Playing with Python.
variables
x = 3
name = "hello"
keywords: and del from not while as elif global or with assert else if pass yield break except import print class exec in raise continue finally is return def for lambda try
Printing strings. What's a string?
Printing numbers. What's a number? What is the difference between "3" and 3?
Understanding the difference between an editor and the shell (console) windows
Looping through a list and outputting formated information
Friday
Comments on Lab 1
Variables
Rules for labeling a variable
CamelCase for regular variables, uppercase for constants
Thinking of a variable as a box, or drawer.
Variables can switch contents
Types of values: int, float, string, char
The concept of an algorithm (Section 1.7 in textbook)
Must be unambiguous, executable, and terminating.
Example: calculating the return on a bank account with a yearly interest rate.
Review of the week: some of the concepts covered: variables, literals, integers, reals, strings, functions, statements, comments
Preparation for Lab #1 <== Please do this if you plan on using your own laptop during the labs
This week, you should read Chapter 1 in Python for Everyone, up to Section 1.6, included.
Read the article on pair programming. We will discuss it in class during the second week of class.
Week 2 2/3
Saturday/Sunday: Moodle Quiz on Chapter 1. Go to Moodle, select CSC111, and locate the Quiz in the "Week 1-Chapter 1" section. (If I have let you in the class, but you are not officially registered yet, please send me an email (dthiebaut@smith.edu) so that I can add you to the moodle roster. )
The two-letter Id needed to submit your program is available here!
Meet Guido van Rossum
Variables:
They are labels for boxes containing information. Boxes in memory.
Different types. Can be combined together.
Values can be assigned to them with =
Operators: + - * / // %
Teller Machine example: given some amount of $ to withdraw from the machine, figure out the number of $20-, $10-, $5- and $1-bills. Here's the program we finished with in class.
Read the article on pair programming. We will discuss it in class on Wednesday.
Finish reading Chapter 2 by the end of this week.
Read Chapter 3 up to Section 3.6 (not included) before Monday 2/10.
Week 3 2/10
Monday
Wednesday
Friday
Reading
Week 4 2/17
Monday
Wednesday: RALLY DAY
Friday
Reading
Week 5 2/24
Monday
Wednesday
Friday
Reading
Week 6 3/3
Monday
Wednesday
Friday
Reading
Week 7 3/10
Monday
Wednesday
in-class MIDTERM EXAM
Friday
Reading
Spring Break
Second Half
Week
Topics
Reading
Week 9 3/24
Monday
Wednesday
Friday
Reading
Week 10 3/31
Monday
Wednesday
Friday
Reading
Week 11 4/7
Monday
Wednesday
Friday
Reading
Week 12 4/14
Monday
Wednesday
Friday
Reading
Week 13 4/21
Monday
Wednesday
Friday
Reading
Week 14 4/28
Monday
Wednesday
Friday: Final Take-Home EXAM
Reading
Links and Resources
On Line Python books
disocovermagazine.com blog. Check out the answers posted by many readers. They contain some interesting links that you may find useful!
Python keywords
The list of all the reserved words of the Python language
and del for is raise assert elif from lambda return break else global not try class except if or while continue exec import pass yield def finally in print