A programming construct determines the order in which lines of code are executed
There are three programming constructs. These are
Sequence
Iteration
**Branching **(also known as selection)
Sequence
Sequence refers to lines of code which are run one line at a time
The lines of code are run in the order that they written from the first line of code to the last line of code
Branching (selection)
Branching, also known as selection is when the flow of the program is interrupted and a condition is tested
The outcome of this condition will then determine which lines or block of code is run next
There are two ways to write selection statements:
if… elseif… else… statements - this is when you test conditions sequentially
switch… case… statements - this is when you test an expression against multiple possible constant values (known as cases)
Iteration
Iteration is **repeating a line or a block of code **using a loop
Iteration can be:
count controlled - this is when the code is repeated a fixed number of times (e.g. using a for loop)
condition controlled - this is when the code is repeated until a condition is met (e.g. using a while loop or a do while loop)
Identifying programming constructs
You can identify which programming constructs are used by looking at certain keywords
The keywords **if, elseif, else, endif, switch, case **indicate that the construct is selection
The keywords for, while, do indicate that the construct is iteration
If none of these keywords are used, this is a good indication that the construct is sequence
01 numbers = []
02 # Ask the user to enter 5 numbers
03 for i in range(5):
04 num = int(input("Enter a number: "))
05 numbers.append(num)
06 # Assume the first number is the largest
07 largest_number = numbers[0]
08 # Identifying the largest number
09 for num in numbers:
10 if num > largest_number:
11 largest_number = num
12 print("The largest number is:", largest_number)
In this example, **iteration **is used twice:
Repeating code to ask the user to enter 5 numbers (indicated by the keyword **for **on line 03)
Repeating code to identify the largest number (indicated by the keyword for on line 09)
In this example,** selection** is used once to determine if a number is bigger than the currently stored biggest number (indicated by the keyword** if **on line 10) and if so it will update the largest number on line 11
Sequence is any lines of code which does not use iteration or selection. In this example, the first and last lines of code are sequence