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


– листинг. Чексиз циклга мисол



Download 1,12 Mb.
bet58/86
Sana21.03.2022
Hajmi1,12 Mb.
#505048
1   ...   54   55   56   57   58   59   60   61   ...   86
Bog'liq
C qo`llanma

7.17. – листинг. Чексиз циклга мисол.

  1. include< iostream. h>

  2. int menu ( )

  3. void DoTaskOne ( );

  4. void DoTaskMany (int);

  5. int main()

  6. {

  7. bool exit=false;

  8. for (; ;)

  9. {

  10. int choice=menu ( );

  11. switch (choice)

  12. {

  13. case (1): DoTaskOne ( );

  14. break;

  15. case (2): DoTaskMany (2);

  16. break;

  17. case (3): DoTaskMany (3);

  18. break;

  19. case (4): continue;

  20. break;

  21. case (5):

  22. exit=true;

  23. break;

  24. default:

  25. cout << “Please select again! \n”;

  26. break;

  27. } // switch блоки тугади.

  28. if (exit)

  29. break;

  30. }

  31. return 0;


  32. int menu()

  33. {

  34. int choice;

  35. cout << **** Menu **** \n\n”;

  36. cout << “(1) Choice one/ \n”;

  37. cout << “(2 Choice two \n”;

  38. cout << “(3) Choice three \n”;

  39. cout << “(4) Redisplay menu \ n”;

  40. cout << “(5) Quit \n\n”;

  41. cin >> choice;

  42. return choice;

  43. }

  44. void DoTaskOne()

  45. {

  46. cout << “Task One! \n”;

  47. }

  48. void DoTaskMany(int which)

  49. {

  50. if (which == 2)

  51. cout << “Task Two! \n”;

  52. else

  53. cout << “Task Three! \n”;

  54. }

НАТИЖА:
* * * Menu * * * * *
(1) Choice one.
(2) Choice two.
(3) Choice three.
(4) Redisplay menu.
(5) Quit.
: 1
Task One ;
* * * Menu * * * * *
(1) Choice one.
(2) Choice two.
(3) Choice three.
(4) Redisplay menu.
(5) Quit.
: 3
* * * Menu * * * * *
(1) Choice one.
(2) Choice two.
(3) Choice three.
(4) Redisplay menu.
(5) Quit.
: 5
CАВОЛЛАР

  1. for циклида бир нечта счётчик ишлатиш мумкинми?

  2. Нима учун goto оператори кўп ишлатилмайди?

  3. Танасида бирор амал ёзилмаган for оператори ёрдамида цикл ташкил этиш мумкинми?

  4. for цикли ичида while циклини ташкил этиш мумкинми?

  5. Ҳеч қачон тугалланмайдиган цикл ташкил этиш мумкинми?

  6. while ва do .. while операторларини қандай фарқлари бор?

ТАЯНЧ ИБОРАЛАР


Цикл, итератив жараён, goto калитли сўзи, while оператори, break ва сontinue операторлари, do...while конструкцияси, for оператори, ички цикллар, счётчикнинг кўриниш соҳаси, switch оператори


АДАБИЁТЛАР


1. Жесс Либерти, “Освой самостоятельно С++ за 21 день”, Санкт Петербург 2000, 815 с.












Кўрсаткичлар.


С++ дастурлаш тилида хотирага бевосита кўрсаткичлар орқали мурожаат қилиш тилнинг энг катта имкониятидир. Ушбу бўлимда биз қуйидаги саволларга жавоб топамиз.

  1. Кўрсаткич нима?

  2. Кўрсаткичлар қандай эълон қилинади ва қўлланилади ?

  3. Хотира билан қандай ишлаш мумкин?

Ушбу машғулотда биз кўрсатгичлар билан ишлашнинг асосий принциплари билан танишамиз.

Кўрсаткич нима ?


Кўрсаткич – бу компютер хотираси ячейкаcининг адреси ёзилган ўзгарувчидир.
Кўрсаткичлар қандай ишлашини билиш учун машина хотираси ташкил этилишининг таянч принципларини билишимиз лозим. Машина хотираси номерланган ячейкалар кетма-кетлигидан иборатдир. Ҳар бир ўзгарувчининг қиймати унинг адреси деб аталувчи алоҳида хотира ячейкасида сақланади. 8.1.- расмда theAge номидаги, хотирадан тўрт байт жой эгаллайдиган бутун қийматли ўзгарувчининг хотирада ифодаланиши кўрсатилган.


8.1. – расм. TheAge ўзгарувчининг хотирада сақланиши

Турли компютерларда хотирани адреслаш турлича қоида асосида ташкил этилади. Кўп ҳолларда дастурчилар учун бирор бир ўзгарувчини аниқ адресини билиш зарур эмас. Зарурат туғилганда бундай ахборотни адрес оператори (&) ёрдамида олиш мумкин. Бу операторнинг қўлланилишига мисол 8.1. – листингда келтирилган.




8.1. – листинг. Адрес оператори .

  1. #inсlude < iostheam.h >

  2. int main()

  3. {

  4. unsigned short shortVar = 5;

  5. unsigned long longVar = 65535;

  6. long sVar = - 65535;

  7. cout << “shortVar :\t” << shortVar ;

  8. cout << “Address of shortVar:\t” ;

  9. cout<<&shortVar<< “\n”;

  10. cout << “longVar :\ t” << longVar ;

  11. cout << “ Address of LongVar: \ t” ;

  12. cout<< &longVar<< “\n”;

  13. cout << “ sVar :\t” << sVar;

  14. cout << “Address of sVar:\t”;

  15. cout << &sVar <<“\n” ;

  16. return 0;

  17. }

НАТИЖА:
shortVar : 5 Address of shortVar : 0х8fc9:fff4


longVar:65535 Address of longVar: 0х8fc9:fff2
sVar: -65535 Address of sVar : 0х8fc9:ffee.

ТАҲЛИЛ
Дастурнинг бошида учта ўзгарувчи эълон қилинади ва уларга қиймат ўзлаштирилади: 4– сатрда unsigned short типида, 5- сатрда unsigned long типида ва 6 – сатрда long типида. Кейин эса 8 – 18 – сатрларда бу ўзгарувчиларнинг қийматлари ва адрес оператори (&) ёрдамида олинган адреслари ҳақида маълумотлар чиқарилади. Дастур ишга туширилиши билан 80386 процессорли компьютерда shortVar ўзгарувчиси қиймати 5 га, унинг адреси эса 0х8fc9:fff4 тенглиги аниқланади. Ўзгарувчини жойлашиш адреси компютер орқали танланади ва у дастурнинг навбатдаги ишга туширилишида ўзгариши мумкин. Шунинг учун сизнинг натижаларингиз олдингиларидан фарқ қилиши мумкин. Лекин биринчи ва иккинчи ўзгарувчиларнинг адреслари фарқи доимо ўзгармай қолади. short типи икки байт жой эгаллашидан бу фарқ 2 байтни ташкил этади. Иккинчи ва учинчи адреслар орасидаги фарқ 4 байтни ташкил этади. Ҳақиқатан ҳам long типидаги ўзгарувчи тўрт байт жой эгаллайди. Бу ўзгарувчиларни хотирага жойлаштириш тартиби 8.2. – расмда келтирилган.






8.2. – расм. Ўзгарувчининг хотирада сақланиш схемаси


Download 1,12 Mb.

Do'stlaringiz bilan baham:
1   ...   54   55   56   57   58   59   60   61   ...   86




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish