The syntax of FOCAL is very similar to that of BASIC; every statement has a line number. Statements can be entered in any order, but they will be executed in numerical order. One difference is that BASIC line numbers are integers, but FOCAL line numbers are in two parts (looking rather like floating point numbers). This allows groups of lines to be treated as an entity, e.g. for subroutines.
Conditional statements ('IF') include an expression, and three lines numbers. If the expression's value is less than zero, the first statement is executed; if zero, the second; or if greater than zero, the third. The second and third lines numbers are optional. Loops ('FOR') are also available.