for takrorlash operatorining sintaksisi quyidagi ko‘rinishga ega:
for (; ;) ;
for takrorlash operatorining
blok-sxemasi
Bu operator o‘z ishini ifodasini bajarishdan boshlaydi. Keyin takrorlash qadamlari boshlanadi. Har bir qadamda bajariladi, agar natija 0 qiymatidan farqli yoki true bo‘lsa, takrorlash tanasi - bajariladi va oxirida bajariladi. Agar qiymati 0 (false) bo‘lsa, takrorlash jarayoni to‘xtaydi va boshqaruv takrorlash operatoridan keyingi operatorga o‘tadi. Shuni qayd qilish kerakki, ifodasi vergul bilan ajratilgan bir nechta ifodalar birlashmasidan iborat bo‘lishi mumkin, bu holda oxirgi ifoda qiymati takrorlash sharti hisoblanadi. Takrorlash tanasi sifatida bitta operator, jumladan bo‘sh operator bo‘lishi yoki operatorlar bloki kelishi mumkin.
Misol uchun 10 dan 20 gacha bo‘lgan butun sonlar yig‘indisini hisoblash masalasini ko‘raylik.
# include < iostream>
using namespace std;
int main ()
{
int Summa=0;
for ( int i= 10 ; i< = 20 ; i++ )
Summ a+=i;
cout<<" Yigʻindi= " << Summa;
return 0; )
}
Dasturdagi takrorlash operatori o‘z ishini, i takrorlash parametriga (takrorlash hisoblagichiga) boshlang‘ich qiymat - 10 sonini berishdan boshlaydi va har bir takrorlash qadamidan (itaratsiyadan) keyin qavs ichidagi uchinchi operator bajarilishi hisobiga uning qiymati bittaga oshadi. Har bir takrorlash qadamida takrorlash tanasidagi operator bajariladi, ya’ni Summa o‘zgaruvchisiga i qiymati qo‘shiladi. Takrorlash sanagichi i qiymati 21 bo‘lganda “i<=20” takrorlash sharti false (0-qiymati) bo‘ladi va takrorlash tugaydi. Natijada boshqaruv takrorlash operatoridan keyingi cout operatoriga o‘tadi va ekranga yig‘indi chop etiladi. Yuqorida keltirilgan misolga qarab takrorlash operatorlarining qavs ichidagi ifodalariga izoh berish mumkin: - takrorlash sanagichi vazifasini bajaruvchi o‘zgaruvchiga boshlang‘ich qiymat berishga xizmat qiladi va u takrorlash jarayoni boshida faqat bir marta hisoblanadi. Ifodada o‘zgaruvchi e’loni uchrashi mumkin va bu o‘zgaruvchi takrorlash operatori tanasida amal qiladi va takrorlash operatoridan tashqarida «ko‘rinmaydi», - takrorlashni bajarish yoki yo‘qligini aniqlab beruvchi mantiqiy ifoda, agar shart rost bo‘lsa, takrorlash davom etadi, aks holda yo‘q. Agar bu ifoda bo‘sh bo‘lsa, shart doimo rost deb hisoblanadi; - odatda takrorlash sanagichining qiymatini oshirish (kamaytirish) uchun xizmat qiladi yoki unda takrorlash shartiga ta’sir kiluvchi boshqa amallar bo‘lishi mumkin.
for operatorida takrorlash tanasi bo‘lmasligi ham mumkin. Yuqorida keltirilgan 10 dan 20 gacha bo‘lgan sonlar yig‘indisini bo‘sh tanali takrorlash operatori orqali hisoblash mumkin:
for ( int i= 10; i< = 20 ; Summa+=i++) ;
Takrorlash operatori tanasi sifatida operatorlar bloki ishlatishini faktorialni hisoblash misolida ko‘rsatish mumkin: