Mavzu: Takrorlanuvchi hisoblash jarayonlarni dasturlash
Hafta
Mavzu
Mashg‘ulot turi
Soat
Mashg‘ulot mazmuni
8-haf-ta
Takrorlanuvchi hisoblash jarayonlarni dasturlash
8-Ma’ruza
2
Takrorlanish operatori, while – old-shartli va do-while –so‘ng shartli takrorlash operatorlari.
Lab_8.1
2
while – old-shartli takrorlash operatorlariga doir dasturlar tuzish.
Lab_8.2
2
do-while –so‘ng shartli takrorlash operatorlariga doir dasturlar tuzish.
Lab_8.3
2
do-while –so‘ng shartli takrorlash operatorlariga doir dasturlar tuzish.
8-Mustaqil ish
1
Topshiriqda berilgan savollarga javob yozish
1
Test savollariga javob berish
4
Dastur tuzishga doir topshiriqlarni bajarish
8-MA’RUZA MAVZU: Takrorlanish operatori, while – old-shartli va do-while –so‘ng shartli takrorlash operatorlari
Reja: Mavzuga kirish;
while – sikl operatori;
do-while – sikl operatori.
Kalit so‘zlar:
algoritm
bo‘lish operatori
butun tur
C-stili
dizayn tizimi
haqiqiy nuqtali raqam
haqiqiy tur
identifikator
ifodalash
ifodani belgilash
ikkilik tur
increment kod va test
increment operator
KIN
ma’lumot turi
o‘zgarmas
o‘zgarmas kalit so‘z
o‘zgaruvchi
o‘zgaruvchi maydoni
o‘zgaruvchilarni e’lon qilish
oddiy tur
operandlar
operator
operatorni belgilash
operatorni taqsimlash
postdekrement
postinkrement
predekrement
preinkrement
psevdokod
qisqa tur
so‘zma-so‘z
talablar spesifikatsiyasi
tizim tahlili
toshish
toshmagan
UNIX davri
uzun tur
yashirin tur
8.1.Mavzuga kirish Key Point.Sikldan dasturni bir necha marta takroran ishlashi uchun buyruq berishdan foydalanish mumkin. Faraz qilaylik, dasturda “C++ ga xush kelibsiz!” jumlasini 100 marta konsol oynaga chiqarish buyrug`ini berishimiz kerak. Buning uchun quyidagicha kodni yozish juda ham zerikarli va mashaqqatli:
Xo`sh, bu muammoning qanday yechimi mavjud?
C++ bir yoki bir nechta operatorlarni ko`p marta, ketma-ketlik tartibida bajaruvchi, sikl deb nomlangan mukammal konstruksiyani taqdim etadi. Bu konstruksiya yordamida kompyuterga dastur orqali yuqoridagi satrni 100 marta chiqarishga oddiy ko`rinishda buyruq berish mumkin:
inthisob = 0;
while (hisob< 100)
{
cout<< "C++ ga xush kelibsiz!\n";
hisob++;
}
Bu yerda hisob sikl tarkibida dastlab 0 qiymat bilan o`qilyapti. Shart qismi(hisob< 100)da uning 100 dan kichik ekanligi tekshiriladi. Agar bu shart rost (true) bo`lsa, siklning tana qismi hisoblanadi, ya’ni, konsol oynaga “C++ ga xush kelibsiz!” jumlasi chiqariladi va hisob1 qiymatga oshiriladi. Bu jarayon siklning shart qismi (hisob< 100)yolg`on (false) qiymat qabul qilgunga qadar (hisob ning qiymati 100 dan oshib ketguncha) davom etadi.Bunday holatda sikl ishi to`xtatiladi va undan keyingi ko`rsatma satrlarining bajarilishiga o`tiladi.
Sikllar – blokdagi ko`rsatma satrlarining takroran ishlashini nazorat qiluvchi konstruksiyalar. C++ sikl operatorlarlarining uch xil turini taqdim etadi: while sikl operatori,dowhile sikl operatori, for sikl operatori.
8.2. while – sikl operatori Key Point.while sikl operatori o`zining shart qismi rost qiymat qabul qilganda tana qismidagi ko`rsatmalarni bajaradi. while sikl operatorining sintaksisi quyidagiicha:
while (sikl davom etish sharti)
{
// sikl tanasi
Ko`rsatmalar (s);
}
8.1(a)-rasmda while siklining blok-sxemasi berilgan. “Sikl tanasi” deb nomlanuvchi sikl bloki takrorlanuvchi ko`rsatma satrlaridan tashkil topgan. Sikl tanasining bir marta bajarilishi siklning iteratsiyasini (yoxud takrorlanishini) anglatadi. Har qanday sikl tana qismining bajarilishini nazorat qiluvchi siklning-davom-etish-sharti – mantiqiy ifodadan tashkil topadi.Bu mantiqiy ifoda har safar sikl tanasining hisoblanishi uchun ishga tushiriladi. Agar u true qiymat qabul qilsa, tana qismi bajariladi; Agar u false qiymat qabul qilsa, butun boshli sikl operatorining ishi to`xtatiladi va dastur o`sha vaqtdagisiklning tana qismini bajarlmaydi.
whilesikl operatori haqida boshlang`ich tasavvurga ega bo`lish uchun “C++ ga xush kelibsiz!” jumlasining 100 marta ekranga chiqarilishini ko`rib chiqish yetarli. Uning blok-sxemasi 8.1(b)-rasmda keltirilgan.
8.1-rasm.while sikl operatori siklning-davom-etish-shartitrue qiymat qabul qilganda sikl tanasida ko`rsatilgan ko`rsatma satrlarini takroran bajaradi. Siklning-davom-etish-sharti – hisob<100vasikl tanasi quyidagi ikki ko`rsatma satridan tashkil topgan:
Bu misol orqali sikl tanasi necha marta bajarilishini aniq bilib olish mumkin. Chunki, bu yerda hisob o`zgaruvchisining necha marta qiymat qabul qilishini aniq bilish imkoni mavjud.Siklning bu turi hisoblovchi-boshqaruv siklisifatida qaraladi.