Download presentation
Presentation is loading. Please wait.
Published byCathleen Ferguson Modified over 9 years ago
1
1 CS 177 Week 5 Recitation Booleans and Control Flow
2
2 Announcements
3
3 Contents Booleans Decision structures While loop Project 2 preview
4
Booleans Boolean (logical) expressions: An expression that can assume only the true or false value We use logical expression in everyday language: If today is raining, then bring an umbrella when you go out. “today is raining” is a logical expression: its value can be either true or false. Other examples: assume x=4 assume str=“abc” x>3 type(str)==int (true) (false)
5
Boolean operators: And, or, not a and b a and true x > 0 and x <=2 y > 0 and y >= 3(overlapped) Booleans PQP and Q TTT TFF FTF FFF
6
Boolean operators: And, or, not a or b a or true x 2 x > 5 or x < 10 (always true) Booleans PQP or Q TTT TFT FTT FFF
7
Boolean operators: And, or, not not a not (not a) not x > 3 DeMorgan’s law not (a or b) == (not a) and (not b) not (a and b) == (not a) or (not b) Booleans Pnot P TF FT
8
(P and (not Q)) or ((not P) and Q) It has a name: XOR Can you do this? Booleans PQP xor Q TT TF FT FF
9
Does the result look familiar? How about this: Let T=1, F=0 Yes, it is the sum of binary numbers Booleans PQP xor Q 110 101 011 000
10
If statement An if statement takes a logical expression and evaluates it. If it is true, the statements in if block are executed, otherwise, they are not executed. Simple decision Decision Structures x = 5 if x>1: print(“print something”) The string is printed x = 0 if x>1: print(“print something”) Does nothing!
11
Two-way decision Decision Structures a = 45 if a < 100: print(“a is small”) else: print(“a is large”) >>> a is small a = 153 if a < 100: print(“a is small”) else: print(“a is large”) >>> a is large
12
Two-way decision Decision Structures a < 100? “a is large”“a is small” noyes
13
Multi-way decision Decision Structures a = 1.5 if a > 2: print(“a>2”) else: if a > 1: print(“1<a<=2”) else: print(“a<=1”) >>> 1<a<=2 a = 1.5 if a > 2: print(“a>2”) elif a > 1: print(“1<a<=2”) else: print(“a<=1”) >>> 1<a<=2
14
Decision Structures Multi-way decision 14 a >2 ? “a>2” noyes a >1 ? “1<a<=2”“a<1” noyes
15
“How long do I have to shower?” You have two replies you could make: a) 10 minutes b) Until you are clean a) When programming, the first answer would be portrayed as a for-loop because we focus on exactly how long the shower will continue: for minutes in range (0,9): shower b) The second answer would be portrayed as a while-loop because the length of the shower is undetermined; we instead focus on the condition of cleanliness: while you are not clean: shower For vs While Loop
16
count = 0 while count < 9: print(“The count is:”,count) count = count + 1 print(“while loop ended”) for count in range(0,9): print(“The count is:”, count) print(“for loop ended”)
17
Rules of While Loops Command name: while Boolean condition (in the previous example: count < 9) determines the termination of loop A colon (“:”) And a block (the indented lines of code) 17
18
Interactive loop Using while loop, we can write interactive loops 18 count = 0 str = “Yes” while str == “Yes”: print(“The count is:”,count) count = count + 1 str = input(“continue? Yes or No:”) print(“while loop ended”)
19
Project 2 Preview Population Growth Simulation The Geometric growth model No limitation on the population For loop Show the population in characters Limitation on the population While loop The limitation is the stopping criterion Show the population in graphs 19
20
Project 2 Preview The structure of a project should be like this: 20 Main function Function 1 Function 2......
21
An Example from the Book def main(): sing("Fred") print() sing("Lucy") def sing(person): happy() happy() print("Happy birthday, dear", person + ".“) happy() def happy(): print("Happy birthday to you!") 21
22
An Example from the Book Functions link to each other by their parameters and return values What does f2(f1()) mean? Pass the function f1 to f2? No Pass the return value of f1 to f2? Yes v=f1() f2(v) 22 f1f2 f1f2 parameterreturn valueparameterreturn value
23
Questions? 23
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.