Count Controlled Loop

Download Report

Transcript Count Controlled Loop

Count Controlled
Loops
Look at the little children …
Why is the sun’s face features orange …
Warm Up Practice

Write a program that continually asks the user for a
price value

When the user enters the word “end” you should end
the program and add the total price of all the products

In addition, display the highest priced item and the
lowest priced item
Count Controlled Loops

Previously, we learned the “while” loop, which we
defined as the condition controlled loop

It is so called “condition controlled” because it iterates
the number of times in which a Boolean expression
holds True

Today, we will look at what is called a “count controlled”
loop
Count Controlled Loops

It is called “count controlled” because it iterates a
specific number of times

It is not dependent on the truth value of a Boolean
expression, or condition
Count Controlled Loop

Now, it’s important to remember that a lot of times in
Python, we can accomplish the same tasks with various
different methods i.e. ELIF’s versus nested IF’s

In the same way, a count controlled loop can be created
by using a “while” loop

These various methods are really for convenience’s sake
(We should also note that a while loop can be duplicated by a
function controlled loop)
Count Controlled Loop
Example:
counter = 0
while counter < 5:
print (“this will print 5 times!”)
counter +=1
Lists

Python has such things called “lists”

Lists are denoted by brackets [ a, b, c, d ] and each
item in the list is separated by commas

Lists can be stored and named as variables
Example:
x = [a, b, c, d]
Lists

One important thing to note about lists is that they can
hold various data types all at once
Example:
list = [“name”, “word”, 1, 2, 3]
The ‘’for’’ loop

The “for” loop is Python’s native count controlled loop
Example:
for num in [1, 2, 3, 4, 5]:
print(“this will also print 5 times”)
The ‘’for’’ loop

The “for” keyword starts the loop

The “num” is the name of the target variable

“in” is another keyword

[1, 2, 3, 4, 5] is the list of items to iterate over

Note the indentation
The ‘’for’’ loop

The “for” loop will iterate once for each item in the list
passed to it when the loop begins

During the first iteration, the target variable will
assume the value of the first item in the list

During the second iteration, it will assume the second
item in the list

This continues until you reach the end of the list
The ‘’for’’ loop
for x in [1, 2, 3, 4, 5]:
print (x)
>> 1
2
3
4
5
The ‘’for’’ loop
for name in [“Josh”, “Jeen”, “Nicole”]:
print(“My favorite student is”, name)
>> My favorite student is Josh
My favorite student is Jeen
My favorite student is Nicole
Practice – Make Dat DOE

Write a program that asks the user how much money
they made from Monday to Sunday

The program should specify the day each time it asks
the user for a value

Then sum up the total amount they made and print out
Practice – Mechanics

Rewrite the following loop as a “while” loop:
for x in [10, 20, 30, 40]:
print (x)
The range( ) Function

So far, we’ve been TIRELESSLY writing out lists of
pre-defined values in our “for” loops

The range( ) function allows us to dynamically generate
lists based on pre-determined criteria
The range( ) Function
for x in range(5):
print(“iteration #”, x)
>> iteration # 0
iteration # 1
iteration # 2
iteration # 3
iteration # 4
The range( ) Function

The range( ) function takes at least one argument

In it’s simplest form, it takes a single integer

The range( ) function returns what we can think of as a
list in Python

When passed a single integer, it will return a list of
integers from 0 to the number specific minus one
The range( ) Function
range(5)
[ 0, 1, 2, 3, 4]
range (10)
[ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
The range( ) Function

However, the range( ) function can behave in different
ways

It can take two arguments, which sets a start and an
end value

By default, the function increments by 1
range (1, 5)
[ 1, 2, 3, 4]
range (5, 10)
[ 5, 6, 7, 8, 9]
The range( ) Function

You can also pass three arguments and set a start
value, an end value, and a step value
range(0, 10, 2)
[0, 2, 4, 6, 8]
range(1, 15, 3)
[1, 4, 7, 10, 13]

If the step count does not perfectly fall on the end
value, it will just include the number before the end
value is reached
The range( ) Function
 Lastly,
you can ask the range( ) function to count
backwards by passing in a negative step count
Practice – Countdown
 Write
a program that counts down from 10 and
then print out “HAPPY NEW YEAR!”
Import ‘’time’’

We’ll talk more about this later, but another module we
can import into Python is “time”

We can ask Python to pause (for dramatic effect) by
calling the sleep( ) function in time

The sleep( ) function can take one argument, denoting
the number of seconds to “sleep”
**sleep( ) can also take floats
Import ‘’time’’
import time
for x in range(10, 0, -1):
print(x)
time.sleep(1)
print(“HAPPY NEW YEAR!”)
Loop Targets

In a “for” loop, we generally use the target variable as a
reference value for some kind of calculation

Remember that the value of the target variable
changes with each iteration of the loop
Practice – Squares

Write a program that calculates the square of the
numbers between 1 and 10

Print out the number and it’s square as your loop
iterates
Practice – Stair Master

Write a program that prints out the following:
**
(2 stars)
****
(4 stars)
******
(6 stars)
********
(8 stars)
**********
(10 stars)
************
(12 stars)
Practice – Divisibility

Write a program that asks the user for an integer

Then print out all numbers that are divisible by that
number from 1 to 1,000
Practice – Divisibility (extension)

Extend your divisibility program to check for all
integers from 1 to 10,000 that are divisible by two
different integers simultaneously

Print out 10 numbers per line
User Controlled Ranges

Sometimes, we need to ask the user to control the # of
iterations within a loop

You can do this by substituting a variable within the
range( ) function to control the start, end, and step
values of the list that will be generated
User Controlled Ranges
x = int(input(“start value: “))
y = int(input(“end value: “))
z = int(input(“step value: “))
range(x, y, z)
User Controlled Ranges

We can also just put the input( ) function directly into
the range( ) function

However, we must remember to convert it into an
integer
User Controlled Ranges
range(int(input(“start: “)), int(input(“end: “)),
int(input(“step: “)))

Just be careful, as this can be confusing and you need
to keep count of how many parentheses you use