Saturday 4 April 2020

for loop in C++


for loop in C++
Its main function is to repeat a statement while the condition remains true, like the while loop. But in addition, for providing places to specify an initialization instruction and an increase instruction. So this loop is specially designed to perform a repetitive action with a counter.

Syntax: 
for (initialization; condition; increase) statement;

It works the following way:
1. Initialization is executed. Generally, it is an initial value set for a counter variable. This is executed only once.
2. Condition is checked, if it is true the loop continues, otherwise the loop finishes and statement is skipped.
3. Statement is executed. As usual, it can be either a single instruction or a block of instructions enclosed within curly brackets { }.
4. Finally, whatever is specified in the increase field is executed and the loop gets back to step 2.

Here is an example of countdown using a for loop.
// countdown using a for loop
#include <iostream.h>
int main ()
{
  for (int n=10; n>0; n--) {
    cout << n << ", ";
  }
  cout << "FIRE!";
  return 0;
}

Output:
10, 9, 8, 7, 6, 5, 4, 3, 2, 1, FIRE! 


The initialization and increase fields are optional. They can be avoided but not the semicolon signs among them. For example we could write: for (;n<10;) if we want to specify no initialization and no increase; or for (;n<10;n++) if we want to include an increase field but not an initialization.

Optionally, using the comma operator (,) we can specify more than one instruction in any of the fields included in a for loop, like in initialization, for example. The comma operator (,) is an instruction separator, it serves to separate more than one instruction where only one instruction is generally expected. For example, suppose that we wanted to intialize more than one variable in our loop:
for ( n=0, i=100 ; n!=i ; n++, i-- )
{
  // whatever here...
}

This loop will execute 50 times if neither n nor i are modified within the loop:



n starts with 0 and i with 100, the condition is (n!=i) (that n be not equal to i). Beacuse n is increased by one and i decreased by one, the loop's condition will become false after the 50th loop, when both n and i will be equal to 50. 

No comments:

Post a Comment