The three different types of loops are:
-Goto = Infinte time loop or just to get somewhere in the code and continue code
-Gosub = To go somewhere in the code and then return back to the place gosub was initiated
- For,to,step = Allows limited number of times, a certain instruction can play for
GOTO
The GOTO command allows you to GO somewhere in your code with an @label.
GOTO @(insert name of label here for goto to "goto")
Example :
ACLS
@Loop
PRINT "Hi"
WAIT 60
GOTO @loop
The result is a screen that has "Hi" just infinitely going down on your screen, until you stop the program.
The GOTO command reads the @loop and searches for that one specific label and then continues the code like normal from there.
You have to have an @(any name here, it's a label) for GOTO to work, or it will give you an error.
Simple.
GOSUB
The GOSUB command allows you to GO into a SUB loop and then return with the RETURN command.
Example :
ACLS
@Loop
PRINT "Hi"
WAIT 60
GOSUB @SLoop
PRINT "Success!"
@SLoop
CLS
WAIT 30
PRINT "If you see this, then it worked!"
WAIT 30
RETURN
Okay, let me break this down. Basically it's the same code from the GOTO command, but I added GOSUB instead of GOTO.
When GOSUB was implemented, it has the same characteristics as GOTO but you have to put a RETURN command at the end of the loop.
Since it has the same characteristics as GOTO (searches for label and executes code), you don't really need to do much.
The thing is though it wont be able to continue your code forever, you need to add RETURN to make it return to the next line of code GOSUB was implemented.
FOR, TO and STEP
This is also part of the looping family, too!
The FOR command allows you to loop a certain "thing" to loop for a certain amount of loops.
STEP is for counting on how many levels, for example, counting by 5's or 10's.
FOR (any variable here>=<any number here to start the loop) TO (any number here to end the loop) (optional) STEP (any number here you want the numbers to count by)
Example :
ACLS
FOR I=0 TO 10
PRINT I
NEXT
What this outputs to the run mode, is FOR I=0, I is starting at 0, TO 10, and should end at 10.
What it should put on the direct mode, is:
1
2
3
4
5
6
7
8
9
10
If you add step however :
ACLS
FOR I=0 TO 10 STEP 5
PRINT I
NEXT
It'll start counting by fives until it reaches near or at it's goal.
0
5
10
WHILE
Repeats the process up to WEND while the condition is satisfied
- Exits the loop if the condition is not satisfied or when the BREAK instruction is executed
Format WHILE Conditional expression
Conditional Expressions The same conditional expressions as in IF statements can be specified
Comparison Operators == Equal to
!= Not equal to
> Greater than
< Smaller than
>= Equal to or greater than
<= Equal to or smaller than
Logical operators (for comparison with multiple conditions) (Condition 1 AND Condition 2) Both of the two conditions must be satisfied
(Condition 1 && Condition 2) Both of the two conditions must be satisfied
(Condition 1 OR Condition 2) Either of the two conditions must be satisfied
(Condition 1 || Condition 2) Either of the two conditions must be satisfied
* The key "||" can be found to the upper left of ? on your keyboard.
Example
A=0:B=4
WHILE A<B
A=A+1
WEND
WEND
Instruction that indicates the end of a WHILE loop
Format WEND
Example
A=0:B=4
WHILE A<B
A=A+1
WEND
REPEAT
Instruction for starting a REPEAT loop
- The UNTIL instruction and a conditional expression should be placed at the end of the loop
- Unlike the WHILE instruction, this executes the process before determining the condition
- Exits the loop when the condition is satisfied or when the BREAK instruction is executed
Format REPEAT
Example
A=0:B=4
REPEAT
A=A+1
UNTIL A>B
UNTIL
Repeats the process from REPEAT until the conditional expression is satisfied
- The REPEAT instruction should be placed at the beginning of the loop
- Unlike the WHILE instruction, this executes the process before determining the condition
- Exits the loop if the condition is satisfied or when the BREAK instruction is executed
Format UNTIL conditional expression
Conditional Expressions The same conditional expressions as in IF statements can be specified
Comparison Operators == Equal to
!= Not equal to
> Greater than
< Smaller than
>= Equal to or greater than
<= Equal to or smaller than
Logical operators (for comparison with multiple conditions) (Condition 1 AND Condition 2) Both of the two conditions must be satisfied
(Condition 1 && Condition 2) Both of the two conditions must be satisfied
(Condition 1 OR Condition 2) Either of the two conditions must be satisfied
(Condition 1 || Condition 2) Either of the two conditions must be satisfied
* The key for "||" can be found on the upper left of ? on your keyboard.
Example
A=0:B=4
REPEAT
A=A+1
UNTIL A<B
That's pretty much it guys, I hope you liked it! I hope it wasn't too confusing for you new guys!