Do/While Loop (Do/While tsikli)
do/while tsikli while tsiklining bir ko'rinishidir. Ushbu tsikl kod blokini shartning rostligini tekshirishdan oldin bir marta bajaradi. Keyin, shart rost bo'lgan vaqt davomida tsiklni takrorlaydi.
SINTAKSIS
do {
// bajariladigan kod bloki
}
while (shart);ESLATMA
while (shart) qismidan keyin nuqtali vergul (;) qo'yilishi shart!
Do/While Misol
Quyidagi misolda do/while tsikli ishlatilgan. Tsikl har doim kamida bir marta bajariladi, hatto shart yolg'on bo'lsa ham, chunki kod bloki shart tekshirilishidan oldin bajariladi.
MISOL
int i = 0;
do {
cout << i << "\n";
i++;
}
while (i < 5);DIQQAT
Shartda ishlatiladigan o'zgaruvchini oshirishni (i++) unutmang, aks holda tsikl hech qachon tugamaydi!
Shart boshidanoq yolg'on bo'lsa
Yuqoridagi misolda i < 5 sharti boshida true edi, shuning uchun tsikl bir necha marta bajarildi. Ammo shart boshidanoq false (yolg'on) bo'lsa nima bo'ladi?
Quyidagi misolda i o'zgaruvchisi 10 dan boshlanadi, shuning uchun i < 5 sharti darhol yolg'on bo'ladi - shunga qaramay, do/while tsikli bir marta ishlaydi:
MISOL
int i = 10;
do {
cout << "i ning qiymati: " << i << "\n";
i++;
} while (i < 5);Xulosa:do/while tsikli har doim kamida bir marta ishlaydi, hatto shart allaqachon yolg'on bo'lsa ham. Bu oddiy while tsiklidan farq qiladi, chunki while agar shart boshidanoq yolg'on bo'lsa, tsiklni butunlay o'tkazib yuboradi.
Amaliy misol: Foydalanuvchi kiritishi
Ushbu dastur foydalanuvchidan musbat son kiritishni so'rashda davom etadi. Tsikl foydalanuvchi 0 yoki manfiy son kiritganda to'xtaydi:
MISOL
int number;
do {
cout << "Musbat son kiriting: ";
cin >> number;
} while (number > 0);Bu kabi holatlarda do/while juda qulay, chunki biz foydalanuvchidan kamida bir marta son so'rashimiz kerak.
