Foydalanilgan adabiyot
J.B. Dixit. Fundamentals of computer programming and Information texnology. India. 2009 (220-309 betlar).
6-MAVZU. SHarti oldin beriladigan va sharti keyin beriladigan sikl operatorlari.
Reja:
Takrorlash operatorlari.
While operatori va uning umumiy ko‘rinishi.
do while operatori va uning umumiy ko‘rinishi.
Tayanch so‘z va iboralar: Dastur, ifodalar, operator, sikllar, takrorlashlar, iteratsiyalar, takrorlanish operatorlari, while operatori, do while operatori.
Sikllar yoki takrorlashlar yoki iteratsiyalar
C++ dasturi ma’lum bir holat erishilgunga qadar qayta-qayta bajarilishi uchun ko`rsatmalar majmuini taminlovchi uchta operatorga ega. Bu holat oldindan aniqlangan (for operatori siklidagidek) yoki ochiq tugallangan (while va do-while operatorlari sikllaridagidek) bo`lishi mumkin. Har doim yodda saqlangki, har qanday nol bo`lmagan qiymat bu haqiqiy (to`g`ri) holat, nol bo`lgan qiymat esa soxta (yolg`on) holatdir. C++ dasturida sikllarning uchta turi while, do-while va foroperatorlari hisoblanidi.
While sikli
Whilesikli ichki nazorat qiluvchi sikl hisoblanadi. Whileoperatorining sintaksisi quyidagicha bo`ladi:
while(condition) // bu erda nuqtali vergul bo`lmaydi
{
body of loop
} // bu erda nuqtali vergul bo`lmaydi
Holat har qanday ifoda bo`lishi mumkin, va har qanday nol bo`lmagan qiymat haqiqatdir. Siklning tanasi oddiy bo`lishi mumkin, tarkibiy operator yoki bo`sh bayonot.
Bu 9.1-rasmda berilgan grafik orqali ko`rsatib berilgan.
9.1-rasm. While siklining ishlashi56
Whilesiklidan foydalanish jarayonida quyidagi jihatlarni yodda saqlash kerak:
(i) Agar holat boshidan yolg`on bo`lsa u biror marta ham bajarilmasligi mumkin.
(ii) Holat to`g`ri bo`lib qolguncha (yoki holat raqamlarda baholansa nol bo`lmasa), nazorat amalga oshiriladi va qachonki holat yolg`on bo`lsa (yoki agar holat raqamlarda baholanganda nol bo`lsa) nazorat sikldan chiqadi.
(iii) Sikl tanasining ichida uni cheksiz bajarilishini oldini olish maqsadida holatni to`xtatuvchi sikl bo`lishi kerak.
Initsializatsiyalanmagan o`zgaruvchi ifodada foydalanganligi sababli sikl boshlanishidan oldin nazorat o`zgaruvchi sikli initsializatsiyalanishi kerak. Sikl tanasi uning ichida sikl o`zgaruvchisini yangilashi kerak, shunday qilib u cheksiz sikl bo`lmaydi.
Bazan whilesikli bo`sh sikl bщlishi mumkin, yani uning tanasida bo`sh operatordan (faqat a) tashqari xech qanday bayonot bo`lmaydi. Misol uchun,
unsigned long delay = 0;
while(+ +delay < 400000) // time delay loop
; // null statement
Yuqorida ko`rsatilgan sikl buyruq bajarilayotgan vaqtda biroz muddatga dasturni to`xtatishga yordam beruvchi timedelay sikliday ishlaydi. U yopilmasdan oldin siz o`qish uchun ekranda biror bir muhim xabarni chiqarmoqchi bo`lgan holatlarda bu juda foydali hisoblanadi. Misol uchun,
unsigned long delay = 0;
while(+ +delay < 400000) // time delay loop
cout << "Wait a while, processing going on\nN;
Do'stlaringiz bilan baham: |