The while loop works as follows:
{
while( [expression is true] ) {
//Do this code
}
}
The while loop re-runs until the expression contained within the parentheses is false. Take a look at this example:
{
while(!place_meeting(x,y,obj_ground)) {
y += 1;
}
}
This while loop tells the object to move down one pixel until it collides with obj_ground. Unfortunately, nothing guarantees that this loop will not run forever. Always make sure that when you construct a while loop that you make sure that it does not run forever. Take a look at this whileloop:
{
while(obj_ball.y < y) {
draw_sprite(sprite_index,0,x,y);
}
}
This while loop will run for ever. Why? It does not have any statements that insure that the while loop aborts. Again, Always make sure that when you construct a loop that you put statements in the loop that will eventually abort the loop. y -= 1; is the statement in this new while loop that eventually aborts the loop:
{
while(obj_ball.y < y) {
draw_sprite(sprite_index,0,x,y); y -= 1;
}
}
Chat with our AI personalities
FOR loops work as follows:{for( [initialize a variable]; [expression]; [increment the variable] ) {//Do this code}}Here as an example of a FOR loop:{for(i = 1; i < 10; i += 1) {show_message(string(i));}}What this will do is show a message 10 times displaying the value of "i" so you would get a message that says "1," another one after that saying "2," etc... The way this works is that you have the variable "i" initialized in the FOR loop. The FOR loop will keep looping until i >= 10, because the middle statement dictates that i must be smaller than 10 for the FOR loop activate. The third statement in the for loop is the statement that you increment the i variable with. If you change i += 1 to i -= 1 then the FOR loop would go on forever, freezing the game. This is a critical mistake to make when constructing a FOR loop (as is with any loop.)
while, do...while, for, foreach are used
While--wend statement is used to execute a loop until a given condition is true.if the condition is false the loop ends and the program continous to the line following eend.
simple code example: <? while ($a < 10 ) { echo "$a, "; $a++; } echo "Finished"; ?> Will output, 1, 2, 3, 4, 5, 6, 7, 8, 9, Finished this will run through the loop WHILE $a is less than 10, outputting the value of $a to the screen. once $a = 10 then the loop will end and continue on with the rest of the script
An infinite loop.