Takrorlash operatorlari for takrorlash operatori


continue, break va goto operatorlari


Download 51.06 Kb.
bet3/3
Sana12.03.2023
Hajmi51.06 Kb.
#1264874
1   2   3
Bog'liq
Takrorlash operatorlari

continue, break va goto operatorlari. continue operatori sikl ichidagi barcha ifodalarning bajarilishi tugallanmasdan navbatdagi iteratsiyaga oʻtish imkonini beradi. Misol tariqasida, 5 dan 10 gacha boʻlgan sonlardan tashqari, 1 dan 100 gacha sonlarning barchasini chiqarish dasturini koʻraylik:
for(int i = 1; i <= 100; ++i) { if(i > 4 && i < 11) continue; cout << i << endl;
}
break operatori siklning bajarilishini uzish imkonini beradi. Misol tariqasida 1 dan 100 gacha sonlarning barchasini yana bir usul bilan chiqaramiz:
int i=1; while(1) {
if(i > 100) break; cout << i << endl;
++i;
}
Bu yerda shartda '1' qiymati koʻrsatildi. Bunda sikl ichidagi koʻrsatmalar cheksiz bajariladi. Ammo, break operatoridan foydalanish, '100'ta satr chop qilinganidan keyin, uning bajarilishini
uzadi. break operatori dasturning emas, balki siklning bajarilishini uzadi, ya’ni boshqaruv sikldan keyin keltirilgan koʻrsatmaga oʻtadi. Cheksiz sikldan break operatori bilan birgalikda foydalanish
foydalanuvchi tomonidan avvaldan aniqlanmagan sondagi ma’lumotlarni olishda qulay. Misol
tariqasida noaniq sondagi butun sonlarni yigʻish dasturini koʻramiz:
#include
#include int main() {
int x = 0, summa = 0;
cout << "Natijani olish uchun 0 sonini kiriting" << endl; for(;;) {
cout << "Son kiriting: "; cin >> x;
if(!cin.good()) {
cout <<"Siz son kiritmadingiz!"<// Xatolik bayroqchasini tashlash
cin.ignore(255,'\n');
continue;
}
if(!x) break;
summa += x;
}
cout << "Sonlar yig'indisi: " << summa <return 0;
}
goto shartsiz oʻtish operatori orqali boshqaruvni dasturning ihiyoriy qismiga oʻtkazish mumkin.
Operator quyidagicha formatga ega:
goto ;
parametridagi qiymat mumkin boʻlgan identifikator boʻlishi lozim. Dasturning boshqaruv uzatilayotgan joyi bir oʻlchamli nison bilan belgilanadi va undan soʻng ikki nuqta ":"
koʻrsatiladi. Misol tariqasia '1' dan '100'gacha sonlarni chiqarishni koʻramiz:
int i = 1; BLOCK_START: {
if(i > 100) goto BLOCK_END; cout << i << endl;
++i;
goto BLOCK_START;
} BLOCK_END:;
Demak, figurali qavslardan nafaqat shartli, siklik operatorlarda, funksiyalarda, balki alohida konstruksiya sifatida ham foydalanish mumkin. Figurali qavslar ichiga olingan kod fragmenti blok
deyiladi. Blok ichida e’lon qilingan oʻzgaruvchilar faqat blok doirasida koʻrinadi.
goto operatoridan imkon qadar foydalanmaslikka intilish zarur, chunki u dasturni juda chalkash qiladi va kutilmagan natijalarga olib kelishi mumkin.

Download 51.06 Kb.

Do'stlaringiz bilan baham:
1   2   3




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling