Python Lab 7 lecture slides
Download
Report
Transcript Python Lab 7 lecture slides
Introduction to Programming
Python Lab 7:
if Statement
PythonLab7 lecture slides.ppt
19 February 2016
Ping Brennan ([email protected])
1
Getting Started
• Create a new folder in your disk space with the name PythonLab7
• Launch the Python Integrated Development Environment (IDLE) begin with the Start icon in the lower left corner of the screen.
• If you are in a DCSIS lab, select the options in the order shown:
Start -> All Programs -> Python 3.4 -> IDLE (Python GUI)
A window with the title Python 3.4.1 Shell should appear. This
window is the Shell.
2
Getting Started (2)
• If you are in one of the ITS labs (MAL 109 or MAL 457), select the
options in the order shown:
Start -> All Programs -> Departmental Software -> Computer
Science -> Python 3.4 -> IDLE (Python 3.4 GUI – 64 bit)
A window with the title Python 3.4.4rc1 Shell should appear. This
window is the Shell.
• In the Shell click on File. A drop down menu will appear.
Click on New File. A window with the title Python 3.4.1:Untitled
(DCSIS) or Untitled (ITS) should appear. This window is the Editor.
3
Getting Started (3)
• In the Editor, click on File, and then in the drop down menu click
on Save As… .
A window showing a list of folders should appear.
– To search any folder on the list, double click on the folder.
– Find the folder PythonLab7 and double click on it.
– In the box File name at the bottom of the window type
QuizGrading.py, and then click on the button Save in the lower
right corner of the window.
The title of the Editor should change to show the location of the file
QuizGrading.py.
4
Objectives of the exercises set
• Objectives
– Understand the use of multiple if statements to solve
problems that have several levels of decision making.
Python provides the special construct elif for creating
if statements containing multiple branches.
When using multiple if statements, we usually test
general conditions after we test the more specific conditions
first.
– Applying relational operators: Python
Description
<
Less than
<=
Less than or equal
>
Greater than
>=
Greater than or equal
==
Equal
!=
Not equal
5
Objectives of the exercises set (2)
• An if statement is used to implement a decision. When a
condition is satisfied (that is, True), one set of statements is
executed. Otherwise, another set of statements is executed.
• The syntax of an if statement is shown below.
Syntax
Example
if condition:
statement(s)
floor = int(input("Floor: "))
if floor > 13:
actualFloor = floor – 1
if condition:
statement(s)
else:
statement(s)
floor = int(input("Floor: "))
if floor > 13: #True branch
actualFloor = floor–1
else:
#False branch
actualFloor = floor
Flowchart
Condition
True
floor
> 13?
actualFloor
= floor - 1
False
actualFloor
= floor
6
Objectives of the exercises set (3)
• The syntax of an elif statement is as follows.
Syntax
Example
if condition:
statement(s)
elif condition:
statement(s)
else:
statement(s)
richter = float(input("Enter a magnitude: "))
if richter >= 8.0:
print("Most structures fall")
elif richter >= 7.0:
print("Many buildings destroyed")
elif richter >= 6.0:
print("Many buildings considerably damaged, some collapse")
elif richter >= 4.5:
print("Damage to poorly constructed buildings")
else:
print("No destruction of buildings")
7
Program 1: Quiz grading
• Problem statement
Write a program that inputs an integer from the keyboard. This
integer is the score. Use an appropriate prompt.
A letter grade is assigned to the score, according to the following
table.
Score
Grade
90-100
A
80-89
B
70-79
C
60-69
D
<60
E
Include in your program a statement to print the letter grade,
together with an appropriate description. See Python for Everyone,
R3.18.
8
Program 1: Quiz grading (2)
• Problem solving – the below flowchart illustrates a possible
solution. Read in a score
True
score
>=90?
Print the
letter grade, A
False
score
>=80?
True
Print the
letter grade, B
False
score
>=70?
True
Print the
letter grade, C
False
score
>=60?
True
Print the
letter grade, D
False
Print the
letter grade, E
9
Program 1: Quiz grading (3)
• Problem solving - Convert the following pseudo code into a
sequence of Python statements in your program.
1.
Read in an integer and store it in the variable score*.
2.
Write statements of the form below to check if the score is greater
than or equal to 90, and then print the letter grade A in the True
branch.
if score >= 90:
print("Grade A")
3.
# True branch
Next write statements of the form below to check if the score is
greater than or equal to 80, and then print the letter grade B.
elif score >= 80:
print("Grade B")
4.
*
# True branch
Write similar statements of the form shown in step 3 to check if the
score is greater than or equal to 70, and then print the letter grade
C.
Hint: To read an integer value, use the input function followed by the int
function. The function int converts the input string into an integer.
10
Program 1: Quiz grading (4)
• Problem solving (continued)
5.
Write similar statements of the form shown in step 3 to check if the
score is greater than or equal to 60, and then print the letter grade
D.
6.
Write statements of the form below to print the letter grade E using
the else statement.
else:
print("Grade E")
•
Provide a comment at the beginning of the program to explain
the purpose of the program together with your name and the
date. Save the program to the file QuizGrading.py and then
run it.
11
Program 2: Leap year
• Create a new Editor for a new file called LeapYear.py
• Problem statement
A year with 366 days is called a leap year. Usually years that are
divisible by 4 are leap years, for example, 1996. However, years
that are divisible by 100 are not leap years, unless the year is also
divisible by 400.
Write a program that asks the user for a year and computes
whether the year is a leap year. Use an appropriate print
statement to display the result of the computation.
See Python for Everyone, P3.27.
12
Program 2: Leap year (2)
• Problem solving - The following method can be used to
check:
o If a year is divisible by 4 but not by 100, it is a leap year.
o If a year is divisible by 4 and by 100, it is not a leap year
unless it is also divisible by 400.
(year%400) == 0
# divisible by 400
(year%100) == 0
# divisible by 100
(year%4) == 0
# divisible by 4
13
Program 2: Leap year (3)
• Problem solving - Convert the following pseudo code into a
sequence of Python statements in your program.
1.
Read in an integer and store it in the variable year
2.
Write statements of the form below to check if the year is
divisible by 400, and then print out the message, Leap year
if year%400 == 0:
print("Leap year")
3.
# True branch
Next write statements of the form below to check if the year
is divisible by 100, and then print the message, Not a leap
year, in the True branch.
elif year%100 == 0:
print("Not a leap year")
4.
# True branch
Write similar statements of the form shown in step 3 to check if
the year is divisible by 4, and then print the message,
Leap year
14
Program 2: Leap year (4)
• Problem solving (continued)
5.
Write statements of the form below to print the message,
Not a leap year
else:
print("Not a leap year")
• Provide a comment at the beginning of the program to explain
the purpose of the program together with your name and the
date. Save the program to the file LeapYear.py and then run
it
15
Appendix A Testing different user
inputs for the leap year problem
• The following table shows some user inputs for the year and
the result of the computation.
year
year%400
== 0
year%100
== 0
year%4 ==
0
result
2016
False
False
True
Leap year
1600
True
True
True
Leap year
1800
False
True
True
Not a leap
year
16