Presentation is loading. Please wait.

Presentation is loading. Please wait.

Python – Part 4 Conditionals and Recursion. Conditional execution If statement if x>0:# CONDITION print (‘x is positive’) Same structure as function definition.

Similar presentations


Presentation on theme: "Python – Part 4 Conditionals and Recursion. Conditional execution If statement if x>0:# CONDITION print (‘x is positive’) Same structure as function definition."— Presentation transcript:

1 Python – Part 4 Conditionals and Recursion

2 Conditional execution If statement if x>0:# CONDITION print (‘x is positive’) Same structure as function definition -Header -Indented block -No limit on number of statements in the body (but at least one)

3 Alternative execution if – else statement if x%2==0: print (‘x is even’) else: print (‘x is odd’) -Exactly one of the alternatives executed -Alternatives are called branches

4 Chained conditionals if-elseif statement if x<y: print (‘x is less than y’) elif x>y: print (‘x is greater than y’) else: print (‘x and y are equal’) - Exactly one branch executed (no limit on number of elseif stmts). If there is else must be at the end

5 Loops What is a loop for? – To repeat a piece of code over and over. – Examples: Iterating through an array (sum, search, print, etc.) Run the main program loop (i.e. keep asking for user input until the program is over.) Etc. 5

6 While Statement New keyword while Syntax while ( condition ): expression1 expression2 … 6 MUST end with colon. MUST have indentation.

7 While execution: – Perform test – If test true, go to body. Execute body expressions. At the end of the block, go back to test. – If test is false, go on. 7 while ( condition ): expression1 expression2 … next expression

8 The ingredients of a loop: n = 0 while ( n <= 5 ): print n n = n + 1 print “Out Of LOOP!” 8 1.Initialize loop variable outside of the loop. 2.Define loop condition. 3.Do loop work. 4.Change the loop variable.

9 Example 1: n = 0 while ( n <= 5 ): print n n = n + 1 print “Out Of LOOP!” 9 Execution: 1.Loop variable, n, set to 0 outside the loop. 2.Perform test: 0 <=5  True. So we enter loop. 3.Print n (so, we print 0) 4.Change n from 0 to 1. 5.Go back to test. 0 OUTPUT

10 Example 1: n = 0 while ( n <= 5 ): print n n = n + 1 print “Out Of LOOP!” 10 Execution: 6.Perform test: 1 <=5  True. So we enter loop. 7.Print n (so, we print 1) 8.Change n from 1 to 2. 9.Go back to test. 0101 OUTPUT

11 Example 1: n = 0 while ( n <= 5 ): print n n = n + 1 print “Out Of LOOP!” 11 Execution: 10.Perform test: 2 <=5  True. So we enter loop. 11.Print n (so, we print 2) 12.Change n from 2 to 3. 13.Go back to test. 012012 OUTPUT

12 Example 1: n = 0 while ( n <= 5 ): print n n = n + 1 print “Out Of LOOP!” 12 Execution: 14.Perform test: 3 <=5  True. So we enter loop. 15.Print n (so, we print 3) 16.Change n from 3 to 4. 17.Go back to test. 01230123 OUTPUT

13 Example 1: n = 0 while ( n <= 5 ): print n n = n + 1 print “Out Of LOOP!” 13 Execution: 18.Perform test: 4 <= 5  True. So we enter loop. 19.Print n (so, we print 4) 20.Change n from 4 to 5. 21.Go back to test. 0123401234 OUTPUT

14 Example 1: n = 0 while ( n <= 5 ): print n n = n + 1 print “Out Of LOOP!” 14 Execution: 22.Perform test: 5 <= 5  True. So we enter loop. 23.Print n (so, we print 5) 24.Change n from 5 to 6. 25.Go back to test. 012345012345 OUTPUT

15 Example 1: n = 0 while ( n <= 5 ): print n n = n + 1 print “Out Of LOOP!” 15 Execution: 26.Perform test: 6 <= 5  False. Skip the loop. 27.Print “Out of LOOP!” 0 1 2 3 4 5 Out of LOOP! OUTPUT

16 Example 1: n = 0 while ( n <= 5 ): print n n = n + 1 print “Blast off!” 16 Key points: 1.Initialize loop variable outside of the loop. 2.Determine loop condition. 3.Do loop work. 4.Change the test value.

17 Example 1: n = 1 while ( n <= 5 ): print n # n = n + 1 print “Blast off!” – What would happen if we didn’t change the loop variable? The loop condition would never become false. 17

18 Infinite loop – When the test condition never has the chance to become False, you have an infinite loop. – World’s simplest infinite loop: while ( True ): print “hi” Other possible infinite loops? 18

19 Infinite loop n = 5 while ( n < 6 ): print n n = n - 1 print “Blast off!” – n must always be less than 10. 19

20 Infinite loop n = 5 while ( n != 0 ): print n n = n - 2 print “Blast off!” – n will never reach the value 0: 9, 7, 5, 3, 1, -1, -2, etc. 20

21 Infinite loop n = 5 while ( n >= 0 ): print n n = n - 2 print “Blast off!” – Not an infinite loop. When n reaches -1, the test wil no longer be true. 21

22 Recursion One function calls itself def countdown(n): if n <= 0: print ('Blastoff!' ) else: print (n) countdown(n-1) -What happens if we call ->>> coundown (3)

23 Recursion def print_n(s, n): if n <= 0: return print (s) print_n(s, n-1) -return statement exits the function -Base case -Recursive (general) case

24 Infinite recursion Recursion never reaches a base case def recurse(): recurse()

25 Keyboard input Built-in function called input (previous versions raw_input) Program stops and waits for the user to type something Value pressed returned to program as a string Good idea to print a prompt telling user what to input

26 Keyboard input >>>name =input (‘What is your name?\n’) Arthur, King of the Britons! >>>print (name) Arthur, King of the Britons! \n represents a newline

27 Keyboard input >>> prompt = 'What is the velocity?\n' >>> speed = input(prompt) What is the velocity? 17 >>> int(speed) 17

28 Part 4 End


Download ppt "Python – Part 4 Conditionals and Recursion. Conditional execution If statement if x>0:# CONDITION print (‘x is positive’) Same structure as function definition."

Similar presentations


Ads by Google