130 likes | 161 Views
More Repetition While and For Loops Sentinel-Controlled Loops. Intro to Computer Science CS1510, Section 2 Dr. Sarah Diesburg. Today’s Agenda. Exploring looping alternatives For and While loops Sentinel-Controlled vs Count-Controlled loops. Questions?. PA3?
E N D
More Repetition While and For Loops Sentinel-Controlled Loops Intro to Computer Science CS1510, Section 2 Dr. Sarah Diesburg
Today’s Agenda • Exploring looping alternatives • For and While loops • Sentinel-Controlled vs Count-Controlled loops
Questions? • PA3? • (Remember, Elise is available to help with homeworks 3-4pm M/W in WRT 339) • The lab?
Loops • Count-controlled loop, which means we will know in advance how many times the loop will run • Sentinel-controlled loop, which means we do not know in advance how many times the loop will run • Controlled by sentinels • Event-controlled
For Loops for varName in iterableDataStructure: (next thing in DataStructure put in varName) suite of code • Is a for loop count-controlled or sentinel-controlled?
While Loops while boolean expression: statementSuite • If while loop is count-controlled, will it contain some kind of counter?
Let’s go through a count-controlled example… • Annoying kid in the car (cartrip.py)
For loop for counter in range(age): print("Are we there yet?")
While loop counting up counter=0 while counter<age: print("Are we there yet?") #counter=counter+1 counter += 1
While loop counting down while age>0: print("Are we there yet?") age -= 1 #But now age is destroyed!
Moving to Sentinel Controlled • For loops are always count-controlled • Every for loop could be written as a while loop (although usually a little more complicated to set up) • While loops can behave like count controlled loops (kid in the car from this week) but also as sentinel-controlled loops (average quiz score from this week).
Let’s go back to Tuesday’s Lab • The “challenge” of using a while loop is that it is a pre-test solution. • That is, you have to have some data to work with • Several solutions to the “average” problem • Adjusting for the extra loop (example 1) • Using a “loop and a half” (example 2) • Infinite loops with a break statement (example 3)