Six blocks have the correct shape
As you can see in Image 4 , there are six blocks of the correct shape exposed by clicking the Operators button. Those blocks are identified as follows:
<(less than)
= (equal to)>(greater than)
andor
not
We will refer to the first three blocks above as relational operators . (They are used to evaluate the relationship between two values.) We will refer to the other three blocks in the above list as logical operators , and will deal with them in a future module.
Relational operators in other languages
Many other modern programming languages also include the following three relational operators:
>= (greater than or equal)<= (less than or equal)
!= (not equal)
Although these operators are a great convenience, they are not essential. We can get by with only the three that are provided by Scratch.
Also, in many other programming languages, a pair of equal characters (==) is used for the equal to operator instead of the single equal character (=) used in Scratch.
Three steps at once
Image 5 shows the result of having taken three more steps in the development of the program:
- I dragged the green less than (indicated by a left angle bracket) block and dropped it into the pocket immediately to the right of the word if .
- I dragged the orange block labeled set...to for the variable named LessThan and inserted it immediately below the word if . I also set its literal value to 1.
- I dragged another copy of the orange block labeled set...to for the variable named LessThan and inserted it immediately below the word else . I left its literal value as the default value of zero.
Image 5. intermediate stage in construction of if-else script.
Still need to complete the conditional clause
The script in Image 5 includes the action to be taken if the relational expression following the word if evaluates to true. It also includes the action to be taken if therelational expression evaluates to false. (This relational expression is often referred to as a conditional clause.) .
However, we still haven't completed the conditional clause in Image 5 . We don't want to test for the relationship between theliteral values blank and blank as shown in Image 5 . Instead we want to test the relationship between the values of the variablesnamed LeftOperand and RightOperand as shown in the corresponding script in Image 2 .
Complete the relational expression
The next and final step for constructing this script is to:
- Click the Variables button to expose the variables as shown in Image 1 .
- Drag the block for the variable named LeftOperand and drop it in the white box immediately to the left of the left angle bracket operator in Image 5 .
- Drag the block for the variable named RightOperand and drop it in the white box immediately to the right of the left angle bracket operator in Image 5 .
Once we do that, we will have finished the construction of the second script from the top in Image 2 .
Completing the program
Following that, we need to go through essentially the same process to construct the bottom two scripts in Image 2 , using the other two relational operators in Image 4 along with the variables named LeftOperand and RightOperand .