Tutorial Series

The special, classroom-ready series pages are organized collections of tutorials for our most popular hardware and/or languages. The tutorials for each topic are conveniently accessible from a single page, shown in the order it is recommended that they be completed.

Numbers

BlocklyProp reference for NUMBERS blocks

The NUMBER operator blocks can accept number value blocks, and any other operation blocks or sensor blocks that provide a numerical value.

math operation

The math operation block performs a mathematical operation on the inserted value blocks. Non-integer (fraction or decimal) results will be truncated to an integer. Choose an operation from the drop-down menu:

+ addition

- subtraction

× multiplication

÷ division

% modulus (remainder after division)

^ (raise to the power of)

The math operation block has two terms by default. Click the gear and drag over additional terms as needed. THE LIMIT IS 26 TERMS.

Order of operations

Innermost, when operation blocks are nested

Raising to a power - use nested operations to raise a power to a power or you may get unexpected results. Switch to the code view to verify that the operations performed on the terms are what you expect.

Multiplication & division

Addition & subtraction

To change the order of operations, nest operation blocks inside each other, and/or use the Parentheses block (below).

limit

The limit block allows you to compare the inserted values, and use the highest or lowest value as chosen in the dropdown menu.

constrain

The constrain block prevents a value from being too large or too small before using it. Insert a value or variable item, and then enter the maximum and minimum values for the range you want that value to stay within before it is used.

de/increment

The de/increment block increases (increment) or decreases (decrement) the variable attached to it by 1.

random

The random block provides a random number between the first inserted low value and the second inserted high value. The first number must be smaller than the second number. If they are not in that order, the resulting random value may be unexpected, such as a number outside the range specified.

parentheses

The parentheses block surrounds the enclosed block(s) with parentheses. Use parentheses to change the order of operations in a series of blocks.

compare values

The compare values block compares two inserted values and provides a boolean value, 1 if the equation is true, and 0 if it is false. Choose the type of comparison from the drop-down menu:

= equal to

≠ not equal to

> greater than

< less than

≥ greater than or equal to

≤ less than or equal to

map value

The map value block scales and offsets the inserted value from the first defined range to the second defined range. This block does not constrain the value that you've entered. For example, given the ranges as shown in the block above, if the value you enter is -5, it will output -10, because the block is asking the new range to be twice the original range.

advanced math

The advanced math block performs a trigonometric, exponential, or logarithmic function on the inserted values, and stores the result in a variable. Angles are in integer degrees, not radians. Options are:

the cosine

the sine

the tangent

the square root

e raised to the power

the logarithm (base 10)

the natural logarithm)

Since Blockly is working only with integer math, the block requires you to begin with a multiplier (the first inserted value). Although you could use 1 here, larger numbers make this block more precise.

inverse trig

The inverse trig block performs an inverse trigonometric function. The angles that this block calculates and stores are in integer degrees, not radians. Options are:

arcsine

arccosine

arctangent

Because inverse trigonometry operations usually are done on ratios (one number divided by another, the block requires you to input both the numerator and denominator of the ratio. If you need the inverse trig operation of a single number, use 1 as the denominator (the second number).