Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
157 views

Gaddis Python 4e Chapter 02 PT 1

This document provides an overview of input, processing, and output in programs. It discusses designing programs through algorithms and pseudocode. Key concepts covered include using print to display output, comments, variables, reading input, and performing calculations. The document also discusses data types like integers, floats, and strings. Functions like print, input, title, upper, lower are demonstrated. Syntax errors and reading input from the keyboard are also explained.

Uploaded by

harutyun
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
157 views

Gaddis Python 4e Chapter 02 PT 1

This document provides an overview of input, processing, and output in programs. It discusses designing programs through algorithms and pseudocode. Key concepts covered include using print to display output, comments, variables, reading input, and performing calculations. The document also discusses data types like integers, floats, and strings. Functions like print, input, title, upper, lower are demonstrated. Syntax errors and reading input from the keyboard are also explained.

Uploaded by

harutyun
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 38

CHAPTER 2

Input,
Processing,
and Output
Topics
◦ Designing a Program
◦ Input, Processing, and Output
◦ Displaying Output with print Function
◦ Comments
◦ Variables
◦ Reading Input from the Keyboard
◦ Performing Calculations
◦ More About Data Output
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
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 (user) to get a sense what the program is
supposed to do
◦ Ask questions about program details
◦ Create one or more software requirements
◦ In college course make sure you understand your professor’s
requirements
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
Algorithms
◦ Set of well-defined logical steps
◦ Must be performed in order to perform a task

• Example: Making a cup of instant coffee


Is this adequate?
– Remove lid from coffee jar
– Put lid down on counter Is it detailed
– Remove 1 tsp of coffee from jar enough?
– Place that coffee in a cup
– Add 8 oz of boiling water to cup Is anything
– Use teaspoon to stir water and coffee mixture ambiguous?
– Stir 10 revolutions
– Remove teaspoon from cup and place on counter
1-6
Class Exercise
◦ Write an algorithm that explains how to make a Peanut
Butter and Jelly sandwich
◦ Assume the person does not know anything about how to
make sandwiches

1-7
Pseudocode
◦ Pretend code
◦ Informal language that has no syntax rule
◦ Not meant to be compiled or executed
◦ Used to create model program
◦ No need to worry about syntax errors, can focus on program’s design
◦ Can be translated directly into actual code in any programming language
Flowcharts
◦ Diagram that graphically depict 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
Input, Processing, and Output
◦ Typically, computer performs three-step process
◦ Receive input
◦ Any data that the program receives while it is running
◦ Perform some process on the input
◦ Example: mathematical calculation
◦ Produce output
print Function
◦ Function: piece of prewritten code that performs an
operation
◦ Calling a function: when programmers ask that a function execute
◦ print function: displays output on the screen
◦ Notice it is all lower case
◦ Argument: data given to a function
◦ Ex: print ("Hello from Python")
String Literals
◦ String: sequence of characters
◦ Can be anything you can type on keyboard
◦ Can be a word, sentence, name, nonsense
◦ String literal: string that appears in program code
◦ Must be enclosed in single (') or double (") quote marks
◦ Putting a quote in string requires special instructions
◦ Must be enclosed in triple quotes (''' or """)
◦ Allows enclosed string to contain both single and double quotes and can
have multiple lines

Examples:
print("Kate Austen")
print('''Cara O'Brian''' "Cara O’Brian")
print('Asheville, NC 28899')
Comments
◦ Notes of explanation within a program
◦ Ignored by Python interpreter
◦ Intended 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

# This program displays a person's name and address.


print('Kate Austen') # Name
print('123 Full Circle Drive') # Street address
print('Asheville, NC 28899') # City, state, and ZIP
Variables
◦ Name that represents a value stored in computer memory
◦ Used to remember, access and manipulate data stored in memory
◦ Variable references the value

◦ Assignment statement - used to create a variable and make it reference


the desired data
◦ General format is
◦ variable = expression
◦ Expression is the value, mathematical equation or function that results in a value
◦ Assignment operator: the equal sign (=)
◦ Examples:
◦ age = 29
◦ age = current_year – birth_year
Variables
◦ In assignment statement, variable receiving value must be
on left side
◦ You cannot use a variable UNTIL a value is assigned to it
◦ Otherwise will "get name 'variable name' is not defined"
◦ A variable can be passed as an argument to a function, like
print
◦ Do not enclose variable name in quotes
Variable Naming Rules
◦ Rules for naming variables in Python
◦ Should be short, but descriptive
◦ First character must be a letter or an underscore
◦ After first character may use letters, digits, or underscores
◦ Variable name cannot be a Python keyword
◦ Variable name cannot contain spaces
◦ Use underscore instead
◦ Variable names are case sensitive
◦ Variable name should reflect its use
◦ Ex: grosspay, payrate
◦ Separate words: gross_pay, pay_rate
Example Program
message = "Hello Python world!"
print(message)
Output:
Hello Python world!
Change Variable Value
message = "Hello Python world!"
print(message)
message = "Hello world!” # message has new value
print(message) # something different is printed

Output:
Hello Python world!
Hello world!
Displaying Multiple Items with the
print Function
◦ Python can display multiple items on one line
◦ Items to print are separated by commas
◦ The items are passed as arguments
◦ Displayed in order they are passed to print function
◦ Items are automatically separated by a space when displayed on
screen

# This program demonstrates printing


# multiple items on one line
room = 503
print('I am staying in room number', room)
Output:
I am staying in room number 503
Print String and Variable
width = 10
length = 5
print('width is', width)
print('length is', length)
print('width')
Output:
width is 10
length is 5
width
Variable Naming Errors
◦ 3dGraph # What is wrong with this variable?
◦ Error: variable can’t start with number

◦ Mixture#3 # What is wrong with this variable?


◦ Error: variable may only use letters, digits or underscores

◦ temperature = 74.5 # Create a variable


◦ print(tempereture) # What is wrong with this variable?
◦ Error: misspelled variable name
◦ Gives error: NameError: name ‘temperature’ is not defined

◦ temperature = 74.5 # Create a variable


◦ print(Temperature) # What is wrong with this variable?
◦ # Error: inconsistent use of case
Variable Reassignment
◦ Variables can reference different values while program is
running
# This program demonstrates variable
reassignment.
# Assign a value to the dollars variable.
dollars = 2.75
print('I had $', dollars, 'in my account.')
# Reassign dollars so it references a different
value.
dollars = 99.95
print('But now I have $', dollars, 'in my
account!')

Output:
I had $ 2.75 in my account.
But now I have $ 99.95 in my account!
Data Types

◦ Categorize value in memory


◦ Written in memory differently
◦ int for integer
◦ float for real number
◦ str used for storing strings in memory
Numeric Literal
◦ Number written in a program
◦ int - whole number. Doesn’t have decimal point
◦ Examples: 7, 124, -9
◦ If number with decimal point is placed in int variable, number is
truncated to smallest number
◦ float - has decimal point
◦ Examples: 1.5. 3.14159, 5.0
Changing Case in String
◦ You can change lower case letters in a string to upper case
and vice versa
◦ First assign a string to a variable
◦ Ex: name = “ada lovelace”
◦ To upper case first letter of each word in a string
◦ Add suffix .title() to variable name
◦ Example: print (name.title())
◦ Produces: Ada Lovelace
◦ print(name.upper())
◦ Produces: ADA LOVELACE
◦ print(name.lower())
◦ Produces: ada lovelace
Combining/Concatenating Strings
◦ You can merge two strings together
◦ Example
first_name = “Ada”
last_name = “Lovelace”
full_name = first_name + “ “ + last_name
print (full_name)
◦ Produces
Ada Lovelace
Syntax Error
◦ When the Python interpreter doesn’t recognize something
in your program as recognizable Python code
◦ Ex: print('Cara O’Brian') has a single quote between single quotes.
Python sees the third quote and doesn’t know how to handle that
◦ Computers are very picky on syntax
◦ Thonny IDE gives help with errors
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 telling user to enter a value
◦ Does not automatically display a space after the prompt
◦ You will need to add one at the end of the string so what user types
doesn't merge with the string prompt
Input Example Program
# Get the user's first name.
first_name = input('Enter your first name: ')

# Get the user's last name.


last_name = input('Enter your last name: ')

# Print a greeting to the user.


print('Hello', first_name, last_name)

Output:
Enter your first name: Anthony
Enter your last name: Manno
Hello Anthony Manno
Reading Numbers with input
◦ input function always returns a string
◦ Need to convert strings to numbers (type conversion)
◦ int(item) converts item to an int
◦ float(item) converts item to a float
◦ This requires a Nested Function Call where you get input from
the user AND convert it to a number in same line
◦ General format:
◦ function1(function2(argument))
◦ value returned by function2 is passed to function1
◦ Example: int( input("what is the temperature? "))
◦ This gets what they user typed and sends it immediately to function that
converts it to an integer
◦ Type conversion only works if item is valid numeric value,
otherwise, gives error
Numeric Input Example
# Get the user's name, age, and income.
name = input('What is your name? ')
age = int(input('What is your age? '))
income = float(input('What is your income? '))
# Display the data.
print('Here is the data you entered:')
print('Name:', name)
print('Age:', age)
print('Income:', income)
Output:
What is your name? Anthony
What is your age? 20
What is your income? 10000
Here is the data you entered:
Name: Anthony
Age: 20
Income: 10000.0
Performing Calculations
◦ Math expression: performs calculation and gives a value
◦ Math operator: tool for performing calculation Operator Description
◦ Resulting value typically assigned to variable
◦ Example: 12 + 2 + Addition
◦ Value returned is 14 - Subtraction
◦ Operands: values surrounding operator * Multiplication
◦ Variables can be used as operands
◦ Example with variables “PayRate” and “HoursWorked” / or // Division
◦ Salary = PayRate * HoursWorked
◦ Two types of division:
◦ / operator performs floating point division
◦ // operator performs integer division
◦ Positive results truncated, negative rounded away from zero
Math Program
# Assign a value to the salary variable.
salary = 2500.0
# Assign a value to the bonus variable.
bonus = 1200.0

# Calculate the total pay by adding salary


# and bonus. Assign the result to pay.
pay = salary + bonus

# Display the pay.


print('Your pay is $', pay)

Output:
Your pay is $ 3700.0
Exponentiation and Remainder
◦ Exponent operator (**): Raises a number to a power
◦ x ** y = xy
◦ Remainder operator (%): Performs division and returns the
remainder
◦ a.k.a. modulus operator
◦ Ex: 4%2=0, 5%2=1
◦ Example uses
◦ Convert times and distances
◦ Detect odd or even numbers
Operator Precedence
◦ Python operator precedence
1. Operations enclosed in parentheses
◦ Forces operations to be performed before others
2. Exponentiation (**)
3. Multiplication (*), division (/ and //), and remainder (%)
4. Addition (+) and subtraction (-)
◦ Higher precedence performed first
◦ Same precedence operators execute from left to right
Zen of Python
◦ Guiding principles for writing code with Python to write well-
designed, elegant and efficient code
◦ Beautiful is better than ugly
◦ Explicit is better than implicit
◦ Simple is better than complex
◦ Complex is better than complicated
◦ Readability counts
◦ In the face of ambiguity, refuse the temptation to guess
◦ Now is better than never.
◦ Although never is often better than right now
Exercises
◦ Do exercises for lab 2a
◦ It is due next class

You might also like