Тилига кириш услубий қўлланма


for циклининг танаси бўш бўлган ҳолда қўлланилиши


Download 0.87 Mb.
bet52/88
Sana18.03.2023
Hajmi0.87 Mb.
#1282045
1   ...   48   49   50   51   52   53   54   55   ...   88
Bog'liq
C o\'rganish uchun yaxshi

for циклининг танаси бўш бўлган ҳолда қўлланилиши.


Циклда for оператори орқали унинг танасига ҳеч қандай оператор ёзмасдан туриб ҳам бирор бир амални бемалол бажариш мумкин. Бунда цикл танаси бўш сатрдан иборат бўлади. Танаси бўш бўлган for циклига мисол 7.13. – листингда келтирилган.


7.13. – листинг. For циклининг танаси бўш бўлган ҳолда қўлланилиши.

  1.  include< iostream. h>

  2. int main()

  3. {

  4. for (int i=0; i<5; cout<< “i” <

  5. ;

  6. return 0;

  7. }

HАТИЖА:
i: 0
i: 1
i: 2
i: 3
i: 4

Ички цикллар


Бошқа циклнинг ичида ташкил этилган цикл ички цикл деб айтилади. Бу ҳолда ички цикл ташқи циклни ҳар бир итерациясида тўлиқ бажарилади. 7.14. – листингда матрица элементларини ички цикл орқали тўлдирилиши намойиш қилинган.
7.14. – листинг. Ички цикллар.

  1. include< iostream. h>

  2. int main()

  3. { int rows, columns;

  4. char theChar;

  5. cout << “How many rows?”;

  6. cin >> rows;

  7. cout << “How many columns?”;

  8. cin >> columns;

  9. cout << “What character?”;

  10. cin>>theChar;

  11. for ( int i=0; i

  12. {

  13. for (int j=0; j

  14. cout << the char;

  15. cout<< “\n”;

  16. }

  17. return 0;

  18. }

HАТИЖА:
How many rows? 4
How many columns? 12
What character? x
х x x x x x x x x x x x
х x x x x x x x x x x x
х x x x x x x x x x x x
х x x x x x x x x x x x

for цикли счётчигининг кўриниш соҳаси


ANSI нинг янги стандарти бўйича циклда эълон қилинган ўзгарувчининг кўриниш соҳаси фақат цикл ичидангина иборат. Лекин кўпгина компиляторлар эски стандартларни ҳам қўллаб – кувватлайдилар. Қуйида келтирилган дастур кодини киритиб ўзингизнинг компиляторингиз янги стандартга мос келиш- келмаслигини текширишингиз мумкин.
include
int main()
{
for ( int i = 0; i<5; i++ )
{
cout << “ i: ” << i << endl ;
}
i=7; // i кўриниш соҳaси чегарасидан ташқарида
return 0;
}
Агарда бу дастур хатоликсиз компиляция қилинса демак у ANSI нинг янги стандартини қўллаб - қувватламайди. Янги стандартга мувофиқ компиляторлар i=7 ифода учун хатолик хақида хабар бериши керак. Дастур кодига озгина ўзгартириш киритилганда сўнг дастур барча компиляторлар учун хатоликсиз ишлайди.
 include< iostream. h>
int main ()
{
int i;
for ( int i = 0; i<5; i++ )
{
cout << “ i: ” << i << endl ;
}
i=7; //Энди i барча компиляторлар томонидан //хатоликсиз қабул қилиниши мумкин.
return 0;
}

switch оператори


Олдинги мавзуларда биз if ва if/else операторлари билан танишган эдик. Лекин айрим масалаларни ечишда if оператори ичида кўп сондаги if операторларини қўллашга тўғри келади. Бу эса дастурни ёзишни ҳам, уни тушинишни ҳам мураккаблаштириб юборади. Бундай муаммони ечиш учун С++ тилида switch оператори қўлланилади. Бу операторнинг if операторидан асосий фарқи шуки, унда бир йўла бир нечта шарт текширилади. Натижада дастурни тармоқланиши нисбатан самаралироқ бўлади. switch операторининг синтаксиси қуйидагичадир.
switch(ифода)
{
case Биринчи киймат: оператор;
break;

case Иккинчи киймат: оператор;


break;
.....
case N нчи киймат: оператор;
break;
defаult: оператор;
}
switch операторидан кейинги қавс ичида тилнинг конструкцияси нуқтаи–назаридан тўғри бўлган ихтиёрий ифодани ишлатиш мумкин. Оператор идентификатори ўрнида ҳам ихтиёрий оператор ёки ифода, ҳамда оператор ва ифодаларнинг кетма-кетлигини ишлатиш мумкин. Лекин бу ерда мантиқий операциялар ёки таққослаш ифодаларини ишлатиш мумкин эмас.

Download 0.87 Mb.

Do'stlaringiz bilan baham:
1   ...   48   49   50   51   52   53   54   55   ...   88




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