ASK "COORDINATES", X, Y 01.03 ASK "A1",A1,"OMEGA",W,"T0",T0,"DAMPING FACTOR",DAMPINGFACTOR If the user doesn't enter a number but enters text, the system will convert the initial character to a number with "A"=1, "B"=2, etc. COMMENT The command (abbreviation C) creates a remark. Equivalent to BASIC's . 01.01 COMMENT: THE SUMER GAME, BY RICHARD MERRILL DO The command (abbreviation D) branches execution to a subroutine. It is the equivalent of BASIC's . The subroutine is referenced either by group number or line number. If a line number is provided, that single line is run and then returns to the statement after the . If no line number is provided, execution starts at the first line of the block and continues until the end of the block is reached or a is encountered. is only required to return early from the group, it is not needed at the end of the group. 01.15 DO 7.24 01.16 DO 8 FOR The command (abbreviation F) implements a for loop. When three arguments are specified, the first is the initial value of the loop variable, the second is the increment, and the third value is the terminating value for the loop. If only two values are provided, the first is the initial value and the second is the terminating value, and the increment is set to 1. This is the pattern from FORTRAN's loops, as opposed to BASIC's where the increment is the last value, if present. In contrast to other parts of the language where multiple statements on a line are independent, the always runs the statements that follow it on the line before the termination has been met, and then continues to the next line. Thus, loops have to be on a single line, or alternately, call a subroutine with . There is no equivalent of BASIC's . 01.01 FOR X=1,10; TYPE X,! 01.02 FOR X=0,10,100; DO 2 A sample FOR loop: 01.10 ASK "HOW MUCH MONEY DO YOU WANT TO BORROW ?",PRINCIPAL 01.20 ASK "FOR HOW MANY YEARS ?",TERM 01.30 FOR RATE=4.0,.5,10;DO 2.0 01.40 QUIT 02.10 SET INTEREST=PRINCIPAL*(RATE/100)*TERM 02.20 TYPE "RATE",RATE," ","INTEREST",INTEREST,! GOTO The command (abbreviation G) jumps program execution to the specified line number. It is identical to the same-named statement in BASIC. In FOCAL, is also used to begin execution, like BASIC's , but in this use, the documentation refers to it as instead of in spite of the underlying command being