csc 1010 programming for all lecture 3 useful python elements for designing programs some material...

26
CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University of Washington

Upload: sherman-thompson

Post on 18-Jan-2016

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

CSC 1010Programming for All

Lecture 3Useful Python Elementsfor Designing Programs

Some material based on material fromMarty Stepp, Instructor, University of Washington

Page 2: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Designing a Program

Programs must be designed before they are written

Program development cycle:Design the program

Write the code

Correct syntax errors

Test the program

Correct logic errors

Page 3: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Designing a Program (cont’d.)

Design is the most important part of the program development cycle

Understand the task that the program is to perform

Work with customer to get a sense what the program is supposed to do

Ask questions about program details

Create one or more software requirements

Page 4: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Designing a Program (cont’d.)

Determine the steps that must be taken to perform the task

Break down required task into a series of steps

Create an algorithm, listing logical steps that must be taken

Algorithm: set of well-defined logical steps that must be taken to perform a task

Page 5: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Pseudocode

Pseudocode: fake codeInformal language that has no syntax rule

Not meant to be compiled or executed

Used to create model programNo need to worry about syntax errors, can focus on program’s design

Can be translated directly into actual code in any programming language

Page 6: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Flowcharts

Flowchart: diagram that graphically depicts the steps in a program

Ovals are terminal symbols

Parallelograms are input and output symbols

Rectangles are processing symbols

Symbols are connected by arrows that represent the flow of the program

Page 7: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University
Page 8: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Input, Processing, and Output

Typically, computer performs three-step process

Receive inputInput: any data that the program receives while it is running

Perform some process on the inputExample: mathematical calculation

Produce output

Page 9: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Displaying Output with the print Function

Function: piece of prewritten code that performs an operation

print function: displays output on the screen

Argument: data given to a functionExample: data that is printed to screen

Statements in a program execute in the order that they appear

From top to bottom

Page 10: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Strings and String Literals

String: sequence of characters that is used as data

String literal: string that appears in actual code of a program

Must be enclosed in single (‘) or double (“) quote marks

String literal can be enclosed in triple quotes (''' or """)

Enclosed string can contain both single and double quotes and can have multiple lines

Page 11: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Comments

Comments: notes of explanation within a program

Ignored by Python interpreterIntended for a person reading the program’s code

Begin with a # character

End-line comment: appears at the end of a line of code

Typically explains the purpose of that line

Page 12: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Variables

Variable: name that represents a value stored in the computer memory

Used to access and manipulate data stored in memory

A variable references the value it represents

Assignment statement: used to create a variable and make it reference data

General format is variable = expressionExample: age = 29

Assignment operator: the equal sign (=)

Page 13: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Variables (cont’d.)

In assignment statement, variable receiving value must be on left side

A variable can be passed as an argument to a function

Variable name should not be enclosed in quote marks

You can only use a variable if a value is assigned to it

Page 14: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Variable Naming Rules

Rules for naming variables in Python:Variable name cannot be a Python key word

Variable name cannot contain spaces

First character must be a letter or an underscore

After first character may use letters, digits, or underscores

Variable names are case sensitive

Variable name should reflect its use

Page 15: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Displaying Multiple Items with the print Function

Python allows one to display multiple items with a single call to print

Items are separated by commas when passed as arguments

Arguments displayed in the order they are passed to the function

Items are automatically separated by a space when displayed on screen

Page 16: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Reading Input from the Keyboard

Most programs need to read input from the user

Built-in input function reads input from keyboard

Returns the data as a string

Format: variable = input(prompt)prompt is typically a string instructing user to enter a value

Does not automatically display a space after the prompt

Page 17: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Reading Numbers with the input Function

input function always returns a string

Built-in functions convert between data typesint(item) converts item to an int

float(item) converts item to a float

Nested function call: general format: function1(function2(argument))

value returned by function2 is passed to function1

Type conversion only works if item is valid numeric value, otherwise, throws exception

Page 18: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

Performing CalculationsMath expression: performs calculation and gives a value

Math operator: tool for performing calculation

Operands: values surrounding operatorVariables can be used as operands

Resulting value typically assigned to variable

Two types of division:/ operator performs floating point division

// operator performs integer divisionPositive results truncated, negative rounded away from zero

Page 19: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

CODING DETAILS

Page 20: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

20

Variables variable: A named piece of memory that can store a value.

Usage: Compute an expression's result, store that result into a variable, and use that variable later in the program.

assignment statement: Stores a value into a variable. Syntax:

name = value

Examples: x = 5gpa = 3.14

x 5 gpa 3.14

A variable that has been given a value can be used in expressions.x + 4 is 9

Page 21: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

21

string: A sequence of text characters in a program. Strings start and end with quotation mark " or apostrophe ' characters. Examples:

"hello""This is a string""This, too, is a string. It can be very long!"

A string may not span across multiple lines or contain a " character."This is nota legal String."

"This is not a "legal" String either."

A string can represent characters by preceding them with a backslash. \t tab character \n new line character \" quotation mark character \\ backslash character

Example: "Hello\tthere\nHow are you?"

Strings

Page 22: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

22

String properties len(string) - number of characters in a string

(including spaces) str.lower(string) - lowercase version of a string str.upper(string) - uppercase version of a string

Example:name = "Martin Douglas Stepp"length = len(name)big_name = str.upper(name)print(big_name, "has", length, "characters“)

Output:MARTIN DOUGLAS STEPP has 20 characters

Page 23: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

23

print : Produces text output on the console.

Syntax:print "Message"print Expression

Prints the given text message or expression value on the console, and moves the cursor down to the next line.

print Item1, Item2, ..., ItemN Prints several messages and/or expressions on the same line.

Examples:print("Hello, world!")age = 45print("You have", 65 - age, "years until retirement")

Output:

Hello, world!You have 20 years until retirement

print

Page 24: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

24

input : Reads a number from user input. You can assign (store) the result of input into a variable. Example:

age = input("How old are you? ")print("Your age is", age)print("You have", 65 - age, "years until retirement“)

Output:

How old are you? 53Your age is 53You have 12 years until retirement

input

Page 25: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

25

if if statement: Executes a group of statements only if a certain

condition is true. Otherwise, the statements are skipped. Syntax:

if condition: statements

Example:gpa = 3.4if gpa > 2.0: print("Your application is accepted.“)

Page 26: CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University

26

if/else if/else statement: Executes one block of statements if a certain

condition is True, and a second block of statements if it is False. Syntax:if condition: statementselse: statements

Example:gpa = 1.4if gpa > 2.0: print("Welcome to Mars University!“)else: print("Your application is denied.“)

Multiple conditions can be chained with elif ("else if"):if condition: statementselif condition: statementselse: statements