Ciklas FOR

Kai iš anksto žinoma, kiek kartų reikia kartoti veiksmus, naudojamas žinomo kartojimų skaičiaus ciklas for.

Ciklo for sintaksė:

for (i = i_pradinė; sąlyga; i = i + žingsnis)
    KartojamasSakinys;

Dažniausiai ciklo kintamojo vardui pasirenkama i (bet nebūtinai).

i_pradinė – tai kintamajam suteikiama pradinė reikšmė;

sąlyga – bet koks santykio, ar loginis sakinys;

i reikšmė keičiama pagal poreikį. Dažniausiai žingsnis yra lygus 1.

Kaip vykdomas ciklas, galima aprašyti:

  1. pirmiausia ciklo kintamajam priskiriama pradinė reikšmė (dažnai tai bus sakinys i = 1);

  2. patikrinama sąlyga, jei ji teisinga, atliekamas KartojamasSakinys;

  3. i reikšmė keičiama, ją didinant (arba mažinant, jei žingsnis yra neigiamas). Veiksmai kartojami nuo 2 sakinio.

CIKLO for PAVYZDŽIAI

1 pvz. Skaičių seka nuo 1 iki 4 spausdinama stulpeliu:

for (i = 1; i <= 4; i = i + 1)
    cout << i << endl; 

Atlikus šiuos sakinius bus spausdinama:
1
2
3
4

pastaba: sakinį i=i + 1 galime užrašyti trumpiau i++

2 pvz. Skaičių seka nuo n iki m spausdinama eilute.

n = 3; m = 7;
for (i = n; i <= m; i++)
cout << i << " ";

Atlikus šiuos sakinius bus spausdinama:
3 4 5 6 7

3 pvz. Kada cikle reikia atlikti kelis sakinius, tuomet jie skliaudžiami riestiniais skliaustais.

m = 3;
for (i = 1; i <= 3; i++)
  {
    m = m + 2; 
    cout << i << " --> " << m << endl;
  }

m reikšmė cikle kaskart didinama dvejetu ir atspausdinama. Atlikus šiuos sakinius ekrane matysime:
1 --> 5
2 --> 7
3 --> 9
4 --> 11

4 pvz. Ciklo kintamojo reikšmė gali būti ne tik didinama, bet ir mažinama nustatytu žingsniu

m = 7; n = 5;
for (i = m; i >= n; i--)
    cout << i << endl; 

Atlikus šiuos sakinius bus spausdinama:
7
6
5

NETEISINGI CIKLO for SAKINIAI

5 pvz. Ciklo sakinys gali ir nebūti atliekamas, jei sąlyga iš kart bus netenkinama:

m = 5; n = 7;
for (i = m; i >= n; i++)
   cout << i << endl;

6 pvz. Ciklas gali tapti amžinu (begaliniu), jei neparašysime sąlygos

m = 5; n = 7;
for (i = n;  ; i ++ 1)
   cout << i << endl;