do/while sikli


ULASHISH

do/while sikli

do/while sikli while siklining bir ko‘rinishidir. Bu sikl shart rostligini tekshirishdan oldin kod blokini bir marta bajaradi, so‘ngra shart rost bo‘lib turguncha siklni takrorlaydi.

Sintaksis

do {   // bajariladigan kod bloki } while (condition);

Quyidagi misolda do/while siklidan foydalanilgan. Shart yolg‘on bo‘lsa ham, sikl kamida bir marta bajariladi, chunki kod bloki shart tekshirilishidan oldin bajariladi:

Misol

int i = 0; do {   printf("%d\n", i);   i++; } while (i < 5);
O‘zingiz sinab ko‘ring »

Shartda ishlatilgan o‘zgaruvchini oshirishni unutmang, aks holda sikl hech qachon tugamaydi!


Shart boshidanoq yolg‘on bo‘lsa

Yuqoridagi misolda i < 5 sharti boshida rost (true) edi, shuning uchun sikl bir necha marta bajarildi. Ammo shart boshidanoq yolg‘on (false) bo‘lsa-chi?

Quyidagi misolda i o‘zgaruvchisi 10 dan boshlanadi, shuning uchun i < 5 sharti darhol yolg‘on bo‘ladi — shunga qaramay do/while sikli baribir bir marta bajariladi:

Misol

Shart boshidanoq yolg‘on bo‘lsa ham, kod bloki baribir bir marta bajariladi:

int i = 10; do {   printf("i is %d\n", i);   i++; } while (i < 5);
O‘zingiz sinab ko‘ring »

Xulosa

do/while sikli shart allaqachon yolg‘on bo‘lsa ham, har doim kamida bir marta bajariladi. Bu oddiy while siklidan farq qiladi: u shart boshida yolg‘on bo‘lsa, siklni butunlay o‘tkazib yuboradi.

Bu xususiyat do/while siklini biror amal kamida bir marta bajarilishini ta’minlash kerak bo‘lganda, masalan, xabar ko‘rsatish yoki foydalanuvchidan ma’lumot so‘rashda foydali qiladi.

Amaliy misol: foydalanuvchi kiritishi

Bu misol foydalanuvchidan musbat son kiritishni qayta-qayta so‘raydi. Foydalanuvchi 0 yoki manfiy son kiritganda sikl to‘xtaydi:

Misol

int number; do {   printf("Enter a positive number: ");   scanf("%d", &number); } while (number > 0);
Misolni ishga tushirish »

Eslatma: scanf() funksiyasi va foydalanuvchi kiritishi haqida keyingi boblarda batafsil bilib olasiz.





W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!