logo

Ma’lumotlarni kiritish-chiqarish operatorlari.

Загружено в:

08.08.2023

Скачано:

0

Размер:

58.716796875 KB
MAVZU : Ma’lumotlarni kiritish-chiqarish operatorlari.
REJA:
1.C++ tilida ma’lumotlarni kiritish operatorlari.
2.C++ tilida ma’lumotlarni chiqarish operatorlari.
3.Sodda operatorlar.
4. Utilitlar va Drayverlar. C++   dasturlash   tili   bilan   tanishib   borishda   davom   etamiz.   Tushunish   oson
bo’lishi uchun console muhitida misollar ko’rmoqdamiz. Console muhitida kiritish
operatori   cin>>   orqali   amalga   oshiriladi.   cin>>   dan   so’ng   istalgan   ma’lumot   turi
e’lon   qilingan   o’zgaruvchini   joylashtirsak   shu   o’zgaruvchi   qiymatini   qo’lda
kiritishimiz   mumkin   bo’ladi.   Ushbu   dasturni   ishga   tushirganingizda   console
kursori sizning biror qiymat kiritishingizni  kutib turadi va berilgan o’zgaruvchiga
biror   qiymat   kiritganingizdan   so’ng,   keyingi   qator   amallarini   bajarishga   o’tadi.
Yuqoridagi   misolda   5   sonini   kiritgan   bo’lsangiz,   “Siz   5   sonini   kiritdingiz”
natijasini   olishingiz   mumkin.       Funksiyani   e’lon   qilish
Funksiyalarni e’lon qilishning umumiy standardi sifatida quyidagicha qonuniyatni
ko’rish mumkin:           ma’lumot turi    funksiya nomi          (ma’l turi
parametr1, ma’l turi parametr2, …)
{
ifodalar(   ya’ni   funksiyani   asosiy   ishini   bajaruvchi   funksiya   tanasi)
}
Funksiyani   e’lon   qilish   va   uni   chaqirish   bo’yicha   sodda   misol   ko’ramiz:
#include   <iostream>
using namespace std;
int a plus b(int a,int b)
{
return (a+b);
}
int main() {
int a=0,b=0;
cout<<“Ikki sonni yig’indisini aniqlash dasturi:\\n”;
cout<<“a sonini kiriting: “; cin>>a;
cout<<“b sonini kiriting: “; cin>>b;
cout<<a<<” va “<<b<<” sonlarining yig’indisi: “<<a_plus_b(a,b)<<endl;
return 0;
}
        C++ dasturlash tilida ma’lumotlarni chiqarish operatorlari.
C++ dasturlash tilining elementlari
Hozirgi   kunda   juda   ko‘p   algoritmik   tillar   mavjud.   Bular   ichida   Java
va   C++   dasturlash   tillari   universal   tillar   hisoblanib,   boshqa   tillarga
qaraganda   imkoniyatlari   kengroqdir.   So‘ngi   yillarda   Java   va   C++
dasturlash   tillari   juda   takomillashib,   tobora   ommalashib   bormoqda.
Mazkur   tillardagi   vositalar   zamonaviy   kompyuter   texnologiyasining
hamma   talablarini   o‘z   ichiga   olgan   va   unda   dastur   tuzuvchi   uchun   ko‘pgina
qulayliklar   yaratilgan. C++   1980   yillar   boshida   Bjarne   Stroustrup tomonidan   C
tiliga   asoslangan   tarzda   tuzildi.   C++   juda   ko’p   qo’shimchalarni   o’z   ichiga   olgan, lekin eng asosiysi u obyektlar bilan dasturlashga imkon beradi.   Dasturlarni tez va
sifatli   yozish   hozirgi   kunda   katta   ahamiyat   kasbetmoqda.   Buni   ta’minlash   uchun
obyektli   dasturlash   g’oyasi   ilgari   surildi.Huddi   1970   yillar   boshida
strukturalidasturlash   kabi,   dasturlarni               hayotdagi   jismlarni   modellashtiruvchi
obyektlat orqali  tuzish dasturlash                     sohasida            inqilob         qildi.   C++    dan
tashqari   boshqa   ko'p   obyektli   dasturlshga   yo’naltirilgan
tillar   paydo   bo'ldi.   Shulardan   eng   ko’zga   tashlanadigani   Xerox   ning   Palo
Altoda   joylashgan   ilmiy-qidiruv   markazida   (PARC)   tuzilgan   Smalltalk
dasturlash   tilidir.   Smalltalk   da   hamma   narsa   obyektlarga   asoslangan.   C++
esa   gibrid   tildir.   Unda   C   tiliga   o’hshab   strukturali   dasturlash   obyektlar
bilan       dasturlash        mumkin.         C++         funksiya     va obyektlarning juda
boy   kutubhonasiga   ega.   Yani       C++   dasturlash   tilida   dasturlashni   o’rganish   ikki
qismga bo’linadi.     Birinchisi bu   C++   tilini o’zini o’rganish, ikkinchisi       esa   C++
ning                standart                     kutubhonasidagi                tayyor  obyekt  va  funksiyalarni
qo’llashni o’rganishdir.
C++   dasturlash   tilida   dastur   quyidagi   tarkibda   tashkil   topadi:
Direktivalar   –   funksiyalar   kutubxonasini   chaqirish.   Ular   maxsus   include
katalogida   joylashgan   va   .h   kengaytmali   fayllar   bo’ladi.   С ++   tilida   masalaning
qo’yilishiga   qarab   kerakli   kutubxonalar   chaqiriladi.   Bus   esa   dasturning
xotiradaegallaydigan joyini minimallashtiradi.
C++   dasturlash   tili   bilan   ishlovchi   eng   sodda   dasturlar   Dev   C++   va
CodeBlocks   dasturlaridir.   Ularning   tarkibida   300   dan   ortiq   kutubxonalar
mavjud.   Eng   ko’p   ishlatiladigan   kutubxonalar   quyidagilar:
#include <iostream.h>,
#include <math.h>
#include <conio.h> #include <graphics.h>
#include  <memory.h>
main   (   )   funksiyasi–   asosiy   degan   ma’noni   anglatadi.   Bu   funksiya   “{“
belgisidan   boshlanadi   va   dasturning   asosini   tashkil   etuvchi   o’zgaruvchilarning
toifalari   ko’rsatiladi.   Dastur   “}”   belgisi   bilan   yakunlanishi   shart.   Agar   dasturda
qism   dasturlardan   foydalanilayotgan   bo’lsa,   ularning   nomlari   va   haqiqiqy
parametrlari   keltiriladi.   So’ngra   dasturning   asosiy   buyruqlari   yoziladi.   Agar
buyruqlar   murakkab   bo’lsas,   ular   alohida   “{   }”   belgilari   orasiga   olingan   bo’lishi
kerak.
С ++   tilida   dasturning   asosi   bo’lmish   buyruqlar   kichik   harflar   bilan
yoziladi.                    Buyruqlar                         nuqta-verguk         bilan  (;)               yakunlanadi.
Buyruqlar   bir   qator   qilib   yozilishi   ham   mumkin.
C++   dasturlash   tilida   dastur   funksiya   va   funksiyalardan   tashkil   topadi.
Agar   dastur   bir   nechta   funksiyalardan   tashkil   topgan   bo’lsa,   bir   funksiyaning nomi   main   deb   nomlanishi   shart.   Dastur   aynan   main   funksiyasining   birinchi
operatoridan boshlab bajariladi.
Dasturning   1-satrida   #include   direktivasi   bo‘lib,   dastur   kodiga   oqimli
o‘qish/yozish   funksiyalari   va   uning   o‘zgaruvchilari   e’loni   joylashgan   iostream.h
sarlavha   faylini   qo‘shadi.   Keyingi   qatorlarda   dasturning   yagona,   asosiy
funksiyasi   main()   funksiyasi   tavsifi   keltirilgan.   Shuni   qayd   etish   kerakki,   C++
dasturida   albatta   main()   funksiyasi   bo‘lishi   shart   va   dastur   shu   funksiyani
bajarish   bilan   o‘z   ishini   boshlaydi.
Dastur   tanasida   konsol   rejimi   ( Consol   –   rejimi   bu   MS   DOS   oynasi
ko’rinishiga   o’xshash   oyna   bo’lib,   unda   foydalanuvchi   dastur   tuzuishda   faqat
dastur   kodlari   bilan   ishlaydi.   Graphic   interface   –   rejimida   esa   faqat   tilning
kodlari   bilangina   emas   muhitning   menyulari,   komponentalari   bilan   ham   ishlashi
mumkin bo’ladi )  da  belgilar   ketma-ketligini   oqimga chiqarish  amali   qo‘llanilgan.
Ma’lumotlarni   standart   oqimga   (ekranga)   chiqarish   uchun   quyidagi   format
ishlatilgan:
cout   <<   <ifoda>;
Bu   yerda   <ifoda>   sifatida   o‘zgaruvchi   yoki   sintsksisi   to‘g‘ri   yozilgan   va
qandaydir qiymat  qabul qiluvchi  til  ifodasi  kelishi  mumkin (keyinchalik, burchak
qavs ichiga olingan o‘zbekcha satr ostini til tarkibiga kirmaydigan tushuncha deb
qabul   qilish   kerak)   . cin   <<   a;
Ma’lumotlarni   klaviatura   yordamida   kiritish   buyrug’i   bo’lib,   u   ham
iostream.h   kutubxonasi   tarkibidagi   funksiya   hisoblanadi.
1.3 Identifikatorlar va kalit so‘zlar.
Dasturlash  tillarida  identifikator  tushunchasi  mavjud  bo‘lib,
dasturda  obyektlarni  nomlash  uchun  ishlatiladi.  O‘zgar
maslarn
i,
o‘zgaruvchilarni,   belgi   (metka),   protsedura   va   funksiyalarni   belgilashda
ishlatiladigan   nom   identifikatorlar   deyiladi.   Identifikatorlar   lotin   alfaviti
harflaridan   boshlanib,   qolgan   belgilari   harf   yoki   raqamlar   ketma   - ketligidan   tashkil   topgan   bo'lishi   mumkin.   Masalan:   axc,   alfa.
Dasturlash   tillarida   dastur   bajarilishi   vaqtida   qiymati
o‘zgarmaydigan   identifikatorlar   o‘zgarmaslar   deyiladi.   O‘zgarmaslar
beshta   guruhga   bo‘linadi   –   butun,   haqiqiy   (suzuvchi   nuqtali),   sanab   o‘tiluvchi,
belgi   (literli)   va   satr   («string»,   literli   satr).
C++   tilida   o‘zgarmas   ( cons )   –   bu   fiksirlangan   sonni,   satrni   va   belgini
ifodalovchi   leksema   hisoblanadi.
Kompilyator   o‘zgarmasni   leksema   sifatida   aniqlaydi,   unga   xotiradan   joy
ajratadi,   ko‘rinishi   va   qiymatiga   (turiga)   qarab   mos   guruhlarga   bo’ladi.
Butun o‘zgarmaslar:  ular quyidagi formatlarda bo’ladi;
-o‘nlik-son;
-sakkizlik-son;
-o‘n.oltilik-son.
O’nlik   o’zgarmas   0   raqamidan   farqli   raqamdan   boshlanuvchi   raqamlar
ketma-ketligi   va   0   hisoblanadi:   0;   123;   7987;   11.
Manfiy   o’zgarmas   –   bu   ishorasiz   o‘zgarmas   bo‘lib,   unga   faqat   ishorani
o’zgartirish   amali   qo‘llanilgan   deb   hisoblanadi.
Sakkizlik   o’   0   raqamidan   boshlanuvchi   sakkizlik   sanoq   sistemasi   (0,1,..,7)
raqamlaridan   tashkil   topgan   raqamlar   ketma-ketligi:
023;-0777;-0.
O‘n   oltilik   o‘zgarmas   0x   yoki   0X   belgilaridan   boshlanadigan   o‘n   oltilik
sanoq   sistemasi   raqamlaridan   iborat   ketma-ketlik   hisoblanadi:
0x1A;-0X9F2D;-0x23.
Harf   belgilar   ixtiyoriy   registrlarda   berilishi   mumkin.
Kompilyator   sonning   qiymatiga   qarab   unga   mos   turni   belgilaydi.   Agar   tilda
belgilangan   turlar   dastur   tuzuvchini   qanoatlantirmasa,   u   oshkor   ravishda   turni
ko‘rsatishi   mumkin.   Buning   uchun   butun   o‘zgarmas   raqamlari   oxiriga,   probelsiz
l   yoki   L   (1ong),   u   yoki   U   (unsigned)   yoziladi.   Zarur   hollarda   bitta   o‘zgarmas
uchun   bu   belgilarning   ikkitasini   ham   ishlatish   mumkin:   451u,   012Ul,   0xA2L.
Haqiqiy   o‘zgarmaslar:   Haqiqiy   o‘zgarmaslar   –   suzuvchi   nuqtali   son
bo‘lib,   u   ikki   xil   formatda   berilishi   mumkin:
   O‘nlik   fiksirlangan   nuqtali   formatda.   Bu   ko‘rinishda   son   nuqta   orqali
ajratilgan   butun   va   kasr   qismlar   ko‘rinishida   bo’ladi.   Sonning   butun   yoki   kasr
qismi   bo‘lmasligi   mumkin,   lekin   nuqta   albatta   bo‘lishi   kerak.   Fiksirlangan
nuqtali   o‘zgarmaslarga   misollar:   24.56;   13.0;   66.;   .87;
   eksponensial   shaklda   haqiqiy   o‘zgarmas   6   qismdan   iborat   bo’ladi:
\”  0x22  “  Qo‘shtirnoqni
chop etish
\?  0x3 Ғ  ?  So‘roq belgisi \а  0x07  bе1  Tovush   signalini
berish
\b  0x08  Bs  Kursorni   1   belgi
o‘rniga   orqaga
qaytarish
\f  0х0С  ff  Sahifani o‘tkazish
\n  0х0А  lf  Qatorni o‘tkazish
\r  0х0D  сr  Kursorni   ayni
qatorning
boshiga qaytarish
\t  0x09  ht  Kursorni
navbatdagi
tabulyatsiya   joyiga
o‘tkazish
\v  0х0D  vt  Vertikal
tabulyatsiya
(pastga)
\000  000  Sakkizlik kodi
\xNN  0xNN Belgi   o‘n   oltilik
kodi   bilan
berilgan
1)   butun   qismi   (o‘nli   butun   son);
2)   o‘nli   kasr   nuqta   belgisi;
3)   kasr   qismi   (o‘nlik   ishorasiz   o‘zgarmas);
4)   eksponenta   belgisi   ‘e’   yoki   ‘E’;
5)   o‘n   darajasi   ko‘rsatkichi   (musbat   yoki   manfiy   ishorali   o‘nli   butun   son);
6)   qo‘shimcha   belgisi   (‘F’   yoki   f   ,   ‘L’   yoki   ‘l’   ).
   Eksponensial   shakldagi   o‘zgarmas   sonlarga   misollar:
1E2;-5E+3;-.25E4;-31.4E-1.
Belgi   o‘zgarmaslar:   Belgi   o‘zgarmaslar   qo‘shtirnoq   (‘,’-apostroflar)   ichiga
olingan   alohida   belgilardan   tashkil   topadi   va   u   char   kalit   so‘zi   bilan   aniqlanadi.
Bitta   belgi   o‘zgarmas   uchun   xotirada   bir   bayt   joy   ajratiladi   va   unda   butun   son
ko‘rinishidagi belgining ASCII kodi joylashadi.   Quyidagilar belgi o‘zgarmaslarga
misol bo’ladi:
Escape
belgilari Ichki   kodi
(16 son) Nomi Belgining
nomlanishi   va
unga mos amal
\\  0х5С  \  Teskari   yon
chiziqni chop etish
\’  0x27  ‘  Apostrofni   chop
etish
Ayrim   belgi   o‘zgarmaslar   ‘\’   belgisidan   boshlanadi,   bu   belgi   birinchidan,
grafik   ko‘rinishga   ega   bo‘lmagan   o‘zgarmaslarni   belgilaydi,   ikkinchidan,   maxsus
vazifalar   yuklangan   belgilar   –   apostrof   belgisi,   savol   belgisini   (?),   teskari   yon
chiziq   belgisini   (\)   va   ikkita   qo‘shtirnoq   belgisini   (“)   chop   qilish   uchun
ishlatiladi. Undan tashqari, bu belgi orqali belgini   ko‘rinishini emas, balki oshkor
ravishda   uning   ASCII   kodini   sakkizlik   yoki   o‘n   oltilik   shaklda   yozish   mumkin.
Bunday belgidan boshlangan belgilar escape ketma-ketliklar deyiladi (1.1-jadval).
Turlangan   o‘zgarmaslar:   Turlangan   o‘zgarmaslar   xuddi
o‘zgaruvchilardek   ishlatiladi   va   initsializatsiya   qilingandan   (boshlang‘ich   qiymat
berilgandan) keyin ularning qiymatini o‘zgartirib bo‘lmaydi.
C++   tilida   o‘zgaruvchi   e’loni   uning   turini   aniqlovchi   kalit   so‘zi   bilan
boshlanadi   va   ‘=’   belgisi   orqali   boshlang‘ich   qiymat   beriladi   (shart   emas).   Bitta
kalit   so‘z   bilan   bir   nechta   o‘zgaruvchilarni   e’lon   qilish   mumkin.   Buning   uchun
o‘zgaruvchilar   bir-biridan   ‘,’   belgisi   bilan   ajratiladi.   E’lonlar   ‘;’   belgisi   bilan
tugaydi.   O‘zgaruvchi   nomi   255   belgidan   oshmasligi   kerak.           O‘zgaruvchilarni
e’lon   qilish   dastur   matnining   istalgan   joyida   amalga       oshirilishi   mumkin.
Dasturlash   tillarida   kalit   so‘zlar   mavjud   bo‘lib   ulardan   boshqa
maqsadlarda   foydalanilmaydi.   Quyida   C++   tilining   kalit   so‘zlarini   alfavit
tartibida,keltiramiz.
C++   tilida:   asm,   auto,   break,   case,   catch,   char,   class,   const,   continue,
default,   delete,   do,   double,   else,   enum,   explicit,   extern,   float,   for,   friend,
goto,   if,   inline,   int,   long,   mutable,   new,   operator,   private,   protected,   public,
register,   return,   short,   signed,   sizeof,   static,   struct,   swith,   template,   this,
throw,   try,   typedef,   typename,   union,   unsigned,   virtual,   void,   volatile,
while .
Protsessor   registrlarini   belgilash   uchun   quyidagi   so‘zlar   ishlatiladi:
_AH, _AL, _AX, _EAX, _BN, _BL, _BX, _EVX, _CL, _CN, _CX, _ESX, _DN,
_DL,   _DX,
_EDX, _CS, _ESR, EBP, _FS, __GS, _DI, _EDI, _SI, _ESI, __BP, SP, DS, _ES,
SS,   _FLAGS.
Bulardan   tashqari   «__»   (ikkita   tag   chiziq)   belgilaridan   boshlangan
identifikatorlar   kutubxonalar   uchun   zahiralangan.   Shu   sababli   ‘_’   va   «_»
belgilarni   identifikatorning   birinchi   belgisi   sifatida   ishlatmagan   ma’qul. Identifikator   belgilari   orasida   bo’sh   joy   belgisi   (probel)   ishlatish   mumkin   emas,
zarur   bo‘lganda   uning   o‘rniga   ‘_’   ishlatish   mumkin.
Misol uchun: silindr_radiusi, aylana_diametri.
                                                                                      OPERATORLAR
Dasturlash   tili   operatorlari   yechilayotgan   masala   algoritmini   amalga
oshirish   uchun   ishlatiladi.   Operatorlar   chiziqli   va   boshqaruv   operatorlariga
bo’linadi.   Aksariyat   holatlarda   operatorlar   nuqtali   vergul   (‘;’)   belgisi   bilan
tugallanadi   va   u   kompilyator   tomonidan   alohida   operator   deb   qabul   qilinadi
( C++   tilidagi   for   operatorining   qavs   ichida   turgan   ifodalari   bundan   mustasno).
Bunday   operator   ifoda   operatori   deyiladi.
2.1.   Qiymat   berish,   inkrement   va   dekrement   operatorlari
Qiymat   berish   amallari   guruhi,   xususan,   qiymat   berish   operatorlari   ifoda
operatorlari hisoblanadi,   C++   da qiymat  berish operatori ‘=’  ko’rinishida bo’ladi:
k=8;.
O’zgaruvchilarga   qiymat   berish,   ya’ni   ularning   oldingi   qiymatini
o’zgartirishning   boshqa   usullari   ham   mavjud.   Bu   kabi   ishlarni   (i++;),   (--j;),
(k+=i;)   operatorlari   yordamida   amalga   oshirish   mumkin.
Bo’sh   va   e’lon   operatorlari:   Dastur   tuzish   amaliyotida   bo‘sh   operator   –   ‘;’
ishlatiladi.   Garchi   bu   operator   hech   qanday   ish   bajarmasa   ham,   hisoblash
ifodalarining   til   qurilmalariga   mos   kelishini   ta’minlaydi.   Ayrim   hollarda   yuzaga
kelgan   «boshi   berk»   holatlardan   chiqib   ketish   imkonini   beradi.   Oddiy
ma'lumotlarni   chiqarishda   ularga   matn   deb   qaraladi   va   u
qo‘shtirnoq ichida yoziladi.
C++   tilida   operand   qiymatini   birga   oshirish   va   kamaytirishning   samarali
vositalari   mavjud.   Bular   inkrement   (++)   va   decrement(--   )   unar   amallardir.
Operandga   nisbatan   bu   amallarning   prefiks   va   postfiks   ko‘rinishlari
bo’ladi.   Prefiks   ko‘rinishda   amal   til   ko‘rsatmasi   bo‘yicha   ish   bajarilishidan   oldin
operandga   qo‘llaniladi.   Postfiks   holatda   esa   amal   til   ko‘rsatmasi   bo‘yicha   ish
bajarilgandan   keyin   operandga   qo‘llaniladi.       Prefiks   yoki   postfiks   amal
tushunchasi   faqat   qiymat   berish   bilan   bog’liq
ifodalarda o‘rinli: ;
х = у ++;  
index   =--i;  
count:++;  
abc-- ;  //   postfiks
//   prefiks
//   unar   amal,   "++count;   "   bilan   ekvivalent
// unar amal, "--abc; " bilan ekvivalent
Bu   yerda   y   o ‘ zgaruvchining   qiymati   x   o ‘ zgaruvchisiga   o ‘ zlashtiriladi   va
keyin   bittaga   oshiriladi ,   i   o ‘ zgaruvchining   qiymati   bittaga   kamaytirib ,   index
o ‘ zgaruvchisiga   o ‘ zlashtiriladi .       sizeof   amali :   Har   xil   turdagi   o ‘ zgaruvchilar
kompyuter   xotirasida   turli      sondagi   baytlarni   egallaydi .  Bunda ,  hattoki   bir   turdagi o ‘ zgaruvchilar   ham   qaysi     kompyuterda   yoki   qaysi   operatsion   sistemada   amal
qilinishiga   qarab   turli       o ‘ lchamdagi   xotirani   band   qilishi   mumkin .
Bu   ishni   C++   tilida   sizeof   amali   yordamida   bajarish   mumkin.   Quyida
keltirilgan   dasturda   kompyuterning   platformasiga   mos   ravishda   tayanch
turlarining o‘lchamlari chop qilinadi.
int main() {
cout<< ’’int turining o‘lchami: "<<sizeof (int)<<"\n"
cout<< ’’float turining o‘lchami: "<<sizeof (float) <<"\n";
cout<< ’’double turining o‘lchami: "<<sizeof (double)<<"\n";
cout<< ’’char turning o‘lchami: "<<sizeof (char)  <<"\n";
return 0; }
                                                                                            2.2.Shart-operatorlari
Yuqorida   mavzularda   keltirilgan   dasturlarda   amallar   yozilish   tartibida
ketma-ket   va   faqat   bir   marta   bajariladigan   holatlar,   ya’ni   chiziqli   algoritmlar
keltirilgan.   Amalda   esa   kamdan-kam   masalalar   shu   tariqa   yechilishi   mumkin.
Aksariyat   masalalar   yuzaga   keladigan  turli   holatlarga   bog‘liq   ravishda   mos   qaror
qabul   qilishni   (yechimni)   talab   etadi.   C++   tilida   dasturning   alohida
bo‘laklarining   bajarilish   tartibini   boshqarishga   imkon   beruvchi   qurilmalarning
yetarlicha   katta   majmuasiga   ega.   Masalan,   dastur   bajarilishining   birorta
qadamida qandaydir shartni tekshirish natijasiga ko‘ra boshqaruvni dasturning        u
yoki   bu   bo‘lagiga   uzatish   mumkin   (tarmoqlanuvchi   algoritm).   Tarmoqlanishni
amalga   oshirish   uchun   shartli   operatordan   foydalaniladi.
If   operatori:   If   operatori   qandaydir   shartni   rostlikka   tekshirshi   natijasiga
ko‘ra dasturda tarmoqlanishni amalga oshiradi:
if  (<shart>) <operator>;
Bu   yerda   <shart>   har   qanday   ifoda   bo‘lishi   mumkin.   Odatda   u   taqqoslash
amali   bo’ladi.   Agar   shart   0   qiymatidan   farqli   yoki   rost   ( true )   bo‘lsa,   <operator>
bajariladi,  aks holda, ya’ni  shart  0 yoki  yolg‘on ( false ) bo‘lsa,  hech qanday amal
bajarilmaydi va boshqaruv  if  operatoridan keyingi operatorga o’tadi .           Ushbu
holat       ko‘rsatilgan.   if()   shart   operatorining   blok   sxemasi
C++   tillarining   qurilmalari   operatorlarni   blok   ko‘rinishida   tashkil   qilishga
imkon   beradi.   Blok   C++   tilida   ‘{‘   va   ‘}’   belgi   oralig‘iga   olingan   operatorlar
ketmaketligi ko‘rinishida bo’ladi. Blok kompilyator tomonidan yaxlit bir operator
deb   qabul qilinadi.   C++   tilida blok ichida e’lon operatorlari ham bo’lishi mumkin
va     ularda   e’lon   qilingan   o‘zgaruvchilar   faqat   shu   blok   ichida   ko‘rinadi   (amal
qiladi),         blokdan tashqarida ko‘rinmaydi. Blokdan keyin ‘;’ belgisi qo‘yilmasligi
mumkin,       lekin   blok   ichidagi   har   bir   ifoda   ‘;’   belgisi   bilan   yakunlanishi   shart.
Dastur bajarilishi jarayonida butun turdagi     o‘zgaruvchi e’lon qilingan va     uning
qiymati   klaviaturadan   o‘qiladi.   Keyin   b   qiymatini   0   sonidan   kattaligi
tekshiriladi, agar shart bajarilsa( true ) , u holda ekranga      “b – musbat son” xabari
chiqadi. Agar shart bajarilmasa, bu operatorlar cheklaи o‘tiladi.   Navbatdagi   shart
operatori b o‘zgaruvchi qiymatini manfiylikka tekshiradi,   agar    shart    bajarilsa, ekranga “b – manfiy son” xabari chiqadi.
If   –   else   operatori:   Shart   operatorining   if   –   else   ko‘rinishi   quyidagicha:
if   (<shart-ifoda>)   <operator1>;   else   <operator2>;.
Bu   yerda   <shart-ifoda>   0   qiymatidan   farqli   yoki   true   bo‘lsa   <operator1>,   aks
holda   <operator2>   bajariladi.   If-else   shart   operator   mazmuniga   ko‘ra
algoritmning   tarmoqlanuvchi   blokini   ifodalaydi:   <shart-ifoda>   -   shart   bloki
(romb)   va   <operator1>   blokning   «ha»   tarmog‘iga,   <operator2>   esa   blokning
«yo‘q»   tarmog‘iga   mos   keluvchi   amallar   bloklari   deb   qarash   mumkin.
Dastur   bajarilganda,   birinchi   navbatda   tenglama   koeffitsientlari   –   a,   b,   c
o‘zgaruvchilar   qiymatlari   kiritiladi,   keyin   diskriminant   –   D   o‘zgaruvchining
qiymati   hisoblanadi.   Keyin   D   o‘zgaruvchining   manfiy   ekanligi   tekshiriladi.   Agar
shart   o‘rinli   bo‘lsa,   yaxlit   operator   bajariladi   va   ekranga   “Tenglama   haqiqiy
ildizlarga   ega   emas”   xabari   chiqadi   va   dastur   o‘z   ishini   tugatadi   (“ return   0;”
operatorini   bajarish   orqali).   Diskriminant   noldan   kichik   bo‘lmasa,   navbatdagi
shart   operatori   uni   nolga   tengligini   tekshiradi.   Agar   shart   o‘rinli   bo’lsa,   keyingi
qatorlardagi   operatorlar   bloki   bajariladi   –   ekranga   “   Tenglama   yagona   ildizga
ega:” xabari, hamda x1 o‘zgaruvchi qiymati chop qilinadi va dastur shu yerda o‘z
ishini   tugatadi,   aks   holda,   ya’ni   D   qiymatni   noldan   katta   holati   uchun   else   kalit
so‘zidan   keyingi   operatorlar   bloki   bajariladi   va   ekranga   “Tenglama   ikkita  ildizga
ega:“   xabari,   hamda   x1   va   x2   o‘zgaruvchilar   qiymatlari   chop   etiladi.   Shu   bilan
shart   operatoridan  chiqiladi   va   asosiy   funksiyaning   return   ko’rsatmasini     bajarish
orqali   dastur   o‘z   ishini   tugatadi.
O‘z   navbatida   <operator1>   va   <operator2>   ham   shartli   operator   bo’lishi
mumkin.   Ifodadagi   har   bir   else   kalit   so‘zi,   oldindagi   eng   yaqin   if   kalit   so‘ziga
tegishli   hisoblanadi   (xuddi   ochiluvchi   va   yopiluvchi   qavslardek).   Buni   inobatga
olmaslik mazmunan xatoliklarga olib kelishi mumkin.             
                                   Goto operatori va nishonlar.
Dasturda   shunday   holatlar   bo’ladiki,   operatorlarning   bajarilishiga
qarab   dasturning   u   yoki   bu   qismiga   to‘g‘ridan-to‘g‘ri   bajarishni   uzatish
ehtiyoji   tug‘iladi.   Bunday   holatlarda   shartsiz   o‘tish   operatoridan
foydalanish mumkin.
C++   tilida   shartsiz   o‘tish   operatorining   sintsksisi   quyidagicha:
Goto < nishon>;
Bu   yerda   <nishon>   -   belgi(metka)   bo‘lib   identifikator   bo‘lishi
mumkin.   Goto   -   o‘tish   ma’nosini   bildiradi.
C++   tillarida   e’lon   qilingan   nishonlar   qayerda   e’lon   qilinishiga   qarab   faqat
e’lon   qilingan   (funksiya,   qism   dastur)   sohada   ko‘rinadi.
Goto   operatorida   qo‘llaniladigan   identifikatorlar   C++   tilida   Delphidagi
kabi e’lon qilinmaydi. Shuni   ta’kidlash   lozimki   C++   tilida   dastur   tuzish   jarayonidagi   ayrim
hollarda   goto   operatoridan   foydalanib   «sakrab   o‘tishi»   hisobiga   xatoliklar
yuzaga   kelishi   mumkin.   Goto   operatori   va   nishonlar.
Dasturda   shunday   holatlar   bo’ladiki,   operatorlarning   bajarilishiga
qarab   dasturning   u   yoki   bu   qismiga   to‘g‘ridan-to‘g‘ri   bajarishni   uzatish
ehtiyoji   tug‘iladi.   Bunday   holatlarda   shartsiz   o‘tish   operatoridan
foydalanish mumkin.
C++   tilida   shartsiz   o‘tish   operatorining   sintsksisi   quyidagicha:
Goto < nishon>;
Bu   yerda   <nishon>   -   belgi(metka)   bo‘lib   identifikator   bo‘lishi
mumkin.   Goto   -   o‘tish   ma’nosini   bildiradi.
C++   tillarida   e’lon   qilingan   nishonlar   qayerda   e’lon   qilinishiga   qarab   faqat
e’lon   qilingan   (funksiya,   qism   dastur)   sohada   ko‘rinadi.
Goto   operatorida   qo‘llaniladigan   identifikatorlar   C++   tilida   Delphidagi
kabi e’lon       qilinmaydi.
Shuni   ta’kidlash   lozimki   C++   tilida   dastur   tuzish   jarayonidagi   ayrim
hollarda  goto operatoridan foydalanib «sakrab o‘tishi» hisobiga xatoliklar   yuzaga
kelishi   mumkin.   Masalan,
int i=0;
i++;     if (i)     goto m;
int j;
m: j+=I;
Bu   misoldagi   goto   operatorining   bajarilishi   xatolikka   olib   keladi,   chunki   j
e’lon    qilinmay     oladi.
Shartsiz   o‘tish   operatori   dastur   tuzishdagi   kuchli   va   shu   bilan   birga   xavfli
vositalardan   biri   hisoblanadi.   Kuchliligi   shundaki,   u   yordamida   algoritmning
«boshi   berk»   joylaridan   chiqib   ketish   mumkin.
Ikkinchitomondan,blokladi   ichiga   o‘tish,   masalan   takrorlash   operatorlarining
ichiga   «sakrab»   kirish         kutilmagan   holatlarni   yuzaga   keltirishi   mumkin.   Shu
sababli,   imkon   qadar   goto
operatoridan   foydalanmaslik   kerak,   ishlatilgan   taqdirda   ham   qo’yidagi
qoidalarga   amal   qilish   zarur:   blok   ichiga,   if…else   va   tanlash   operatorlari   ichiga
hamda   takrorlash   operatorlari   tanasiga   tashqaridan   kirish   mumkin   emas.     Garchi,
nishon   yordamida   dasturning   ixtiyoriy   joyiga   o‘tish   mumkin   bo’lsa     ham,
boshlang‘ich qiymat berish e’lonlaridan sakrab o‘tish man etiladi, lekin    bloklardan
sakrab   o‘tish   mumkin.
Xususan,  nishon yordamida ichki  blokdan tashqi  blokka va tashqi  blokdan     ichki
blokka o‘tishga  C++  tili ruxsat beradi
                    Utilitlar va drayverlar
Utilita-dasturlar   bu operatsion tizimni imkoniyatlarini kuchaytiruvchi dasturlar.  Masalan: disklar ustidan har xil amallarni bajaruvchi dasturlar, kompyuter ishini 
tezlashtiruvchi dasturlar, malumotlar   xajmini uzgaruvchi dasturlar , viruslarni 
aniqlovchi dasturlar va xokazo. Masalan, kattik disk (vinchester) bilan turli ishlarni
amalga oshirish uchun maxsus dasturlar zarur.
Vinchesterni   b ў laklarga   b ў lish,   uning   ma‘lum   b ў laklarini   parol   bilan   ximoyalash
uchun Disk Manager deb ataluvchi dastur ishlatiladi.
Diskning   xolatini   tekshirish   uchun   esa   NDD   (Norton   disk   doctor)   dastursi
ishlatiladi.   Bu   dastur   yordamida   disk   segmentlari   tekshirilib,   undagi   xatoliklar
topiladi va bartaraf etiladi.
Diskdagi   ma‘lumotlarni   optimizatsiya   қ ilish,   ya‘ni   bir   tartib   bilan   joylashtirib
chi қ ishga xizmat   қ iluvchi SD (Speed Disk)  dastursi  mavjuddir. Uning yordamida
diskdagi  ma‘lumotlar tartibga keltiriladi, bu esa diskdagi  ma‘lumotlarga murojaat
қ ilishni yengillashtirib, kompyuter ishini tezlatadi.
Yu қ orida   sanab   ў tilgan   dasturlarni   ishlatish   қ ulay   b ў lib,   dialog   darchasida   ҳ osil
b ў ladigan   menyu   punktlaridan   mosini   tanlash   va   ishlatishdan   iboratdir.
Utilitlar   guruxlarga   birlashtirilib ,   ularning   eng   k ў p   ishlatiladiganlari   Norton
Utilities,   PC   Tools   Deluxe,   Mace   Utilities   lar   b ў lib   xisoblanadi.   Utilitlarni
қ uyidagi tartibda guruxlarga b ў lib chi қ ish mumkin:
• Siqadigan dasturlar maxsus usullarni  қў llagan xolda ma‘lumotlarni si қ ilgan   xolda
joylashtirib ,   ularning   arxiv   nusxalarini   xosil   қ ilishga   yordam   beradilar.   Masalan,
PKZIP, PKUNZIP va ARJ dasturlari bularga misol b ў la oladi.
•   Disklardagi   ma‘lumotlarning   rezerv   nusxalarini   xosil   қ iladigan   dasturlar   қ atti қ
u1076   diskka   yozilgan   ma‘lumotlarni   tezlik   bilan   disketlarga   yoki   strimmerlarga
nusxalash uchun yordam beradilar. Masalan, Norton Backup, Fast Back Plus.
•   Antivirus   dasturlari,   ular   xilma-xil   turdagi   viruslarga   қ arshi   samarali   kurashish
uchun xizmat  қ iladilar
•   Kommuniktsion   dasturlar   kompyuterlararo   ma‘lumotlarni   almashinish   uchun
ishlatiladilar. Masalan, Brooklin Bridge, DeskLink, LapLink, Fast Link. Telemate,
Procomm,   Dataline   dasturlari   kompyuterlarning   telefon   kanallari   or қ ali   mulo қ ot
қ ilinishiga   yordam   bersa ,   WinFax   Pro,   Bit   Fax,   Fax   It   dasturlari   telefon
ma‘lumotlarini faks modem or қ ali uzatish imkoniyatini yaratadilar.
•   Kompyuterni   diagnostika   қ ilish   dasturlari   uning   konfiguratsiyasini   va   ishga
layo қ atliligini   tekshirishga   imkon   beradi.   Masalan,   Cheeck   It,   ND   lags,   Control
Room,   System   Sleuth   dasturlarini   shu   dasturlar   turkumiga   kiritish   mumkin.
Disklarni   tekshirish   uchun   Disk   Technician   Advance ,   Calibrate   dasturlari
қў llanilishi mumkin. •   Disk   uchun   m ў ljallanilgan   dastur-kesh   diskdan   ma‘lumot   ўқ ishni   ancha
tezlashtirishga imkon beradi, chunki ushbu xolda operativ xotirada diskning tez-tez
ishlatilib   turadigavn   b ў laklarini   ў z   ichiga   olgan   kesh-bufer   xosil   қ ilinadi.
Masalan,   Smart Drive , NKache, Super PC Kwik.
•   Disklarni   optimizatsiya   қ ilish   dasturlari   disklarda   sa қ lanadigan   ma‘lumotlar
xajmini   ancha   oshirishga   va   ma‘lumotlarni   tezro қ   topishga   yordam   beradi.
Masalan, Speed Disk yoki Fast Trax dasturlari.
•   Disklarni   dinamik   si қ ishtirishga   imkon   beruvchi   dasturlar   disklarda   sa қ lanilishi
mumkin   b ў lgan   informatsiya   xajmini   ancha   oshirishga   yordam   beradi.   Masalan,
Stacker, Double Space, Super Stir dasturlari.
• Avtonom ravishda chop  қ ilish dasturlari (skulerlar) fayllarni chop  қ ilishni bosh қ a
ishlar   bilan   bir   va қ tda   amalga   oshirishga   imkon   beradi.   Masalan,   Print   Cashe
dasturi.
• Xotirani bosh қ arish uchun m ў ljallanilgan operativ xotirani yaxshiro қ   bosh қ arish
uchun ishlatiladi. Masalan,  Software Carousel  va Switch It dasturlari  xotiraga bir
қ ancha dasturlarni yuklashga va biridan ikkinchisiga osonlik bilan  ў tishga yordam
beradi.
                                      
                                                       XULUSA:                                      
Biz c++ tilida  ma’lumotkarni kiritish va chiqarish operatoratoralini o’rgandik.C++
dasturlash tilida biz matematik masalalalarni ishlashimiz mumkin.Utilitlar va 
drayverlar bilan ham tanishib chiqdik.  Biz bu mustaqil ish mavzusini 
o’ranoshimizning maqsadi :  hozirgi  davr kompyuter davri hisoblanadi.C++ 
dasturlash tilining imkoniyatlari juda ko’p. C++ dasturlash tilida matematik 
funksiyalar uchun standard funkiyalar jadvali bor.
C++ tilining egasi yo‘q, u hech kimga tegishli emas. Bu til C tilidan kelib   chiqgani
uchun bosh harf        C    ,   ++   esa bu tildagi qiymatni bittaga ko‘tarish belgisi hisoblanadi
va bu belgi C++ dasturlash tilida paydo bo‘lgan.
C++   dasturlash   tili   kompilyasiya   qilinadigan   til   hisoblanadi ,   bu   degani   yozilgan
kod oldin mashina tiliga o‘giriladi va keyin ishga tushiriladi deganidir.
C++   dasturlash   tili   funksiya   va   ob’ektlarning   juda   boy   kutubxonasiga   ega.   Ya’ni
C++   tilida   dasturlashni   o‘rganish   ikki   qismga   bo‘linadi.   Birinchisi   bu   C++   tilini
o‘zini   o‘rganish,   ikkinchisi   esa   C++   tilining   standart   kutubxonasidagi   tayyor
ob’ekt(funksiya)larni qo‘llashni o‘rganishdir.  C++ tili va ob’ektlarga mo‘ljallangan
dasturlash tili.
C++   tili   ob’ektga   mo‘ljallangan   dasturlash   tamoyillarini   qo‘llab-   quvvatlaydi.   Bu
tamoyillar quyidagilardir:
1.
Inkapsulyasiya
2.
Merosxo‘rlik
3.
Polimorfizm                           FOYDALANILGSAN ADABIYOTLAR RO’YXATI I. 
                                       Me’yoriy- huquqiy xujjatlar.
1. O’zbekiston  Respublikasi  Prezidentining «Oliy ta’lim  muassasalarining  rahbar
va   pedagog   kadrlarini   qaytatayyorlash   va   malakasini   oshirish   tizimini   yanada
takomillashtirish   chora-tadbirlari   to’g’risida»   2015   yil   12   iyundagi   PF-4732-son
Farmoni. 2. O’zbekiston Respublikasi Prezidentining 2010 yil 2 noyabrdagi “Oliy
malakali   ilmiy   va   ilmiy-pedagogik   kadrlar   tayyorlash   tizimini   yanada
takomillashtirish   chora-tadbirlari   to’g’risida”gi   PQ-1426-sonli   Qarori.   3.   Kadrlar
tayyorlash   milliy   dasturi.   O’zbekiston   Respublikasi   Oliy   Majlisining
Axborotnomasi,   1997   yil.   11-12-son,   295-modda.   4.   O’zbekiston   Respublikasi
Prezidentining 2012 yil 24 iyuldagi “Oliy malakali ilmiy va ilmiy-pedagog kadrlar
tayyorlash   va   attestasiyadan   o’tkazish   tizimini   yanada   takomillashtirish
to’g’risida”gi   PF–4456-son   Farmoni.   5.   O’zbekiston   Respublikasi   Vazirlar
Mahkamasining   2012   yil   28   dekabrdagi   “Oliy   o’quv   yurtidan   keyingi   ta’lim
xamda   oliy   malakali   ilmiy   va   ilmiy   pedagogik   kadrlarni   attestasiyadan   o’tkazish
tizimini takomillashtirish choratadbirlari to’g’risida”gi 365- sonli Qarori. II.
Maxsus adabiyotlar.
1.   Bjarne   Stroustrup.   Programming:   Principles   and   Practice   Using   C++   (2nd
Edition).   Person   Education,   Inc.   2014.   second   printing,   January   2015.   2.   Harry
Hariom Choudhary, Bjarne M Stroustrup. C++ Programming Professional.: Sixth
Best Selling Edition for Beginner's & Expert's 2014. 3. Bjarne Stroustrup.The C++
Programming Language, 4th Edition. Person Education, Inc. 2013. Third printing,
April 2014. 4. Nazirov Sh.A., Qobulov R.V., Bobojanov M.R., Raxmanov Q.S.  С
va   С ++ tili. “Voris-nashriyot” MCHJ, Toshkent  2013. 488 b. 5. Horstmann, Cay
S. C++ for everyone / Cay S. Horstmann. Printed in the United States of America -
2nd ed. 2010. – P. 562. 579 6. Horton I. - Beginning Visual C++ 2012 / I.Horton.
Published simultaneously in Canada. – 2012. –P. 988.

MAVZU : Ma’lumotlarni kiritish-chiqarish operatorlari. REJA: 1.C++ tilida ma’lumotlarni kiritish operatorlari. 2.C++ tilida ma’lumotlarni chiqarish operatorlari. 3.Sodda operatorlar. 4. Utilitlar va Drayverlar.

C++ dasturlash tili bilan tanishib borishda davom etamiz. Tushunish oson bo’lishi uchun console muhitida misollar ko’rmoqdamiz. Console muhitida kiritish operatori cin>> orqali amalga oshiriladi. cin>> dan so’ng istalgan ma’lumot turi e’lon qilingan o’zgaruvchini joylashtirsak shu o’zgaruvchi qiymatini qo’lda kiritishimiz mumkin bo’ladi. Ushbu dasturni ishga tushirganingizda console kursori sizning biror qiymat kiritishingizni kutib turadi va berilgan o’zgaruvchiga biror qiymat kiritganingizdan so’ng, keyingi qator amallarini bajarishga o’tadi. Yuqoridagi misolda 5 sonini kiritgan bo’lsangiz, “Siz 5 sonini kiritdingiz” natijasini olishingiz mumkin. Funksiyani e’lon qilish Funksiyalarni e’lon qilishning umumiy standardi sifatida quyidagicha qonuniyatni ko’rish mumkin: ma’lumot turi funksiya nomi (ma’l turi parametr1, ma’l turi parametr2, …) { ifodalar( ya’ni funksiyani asosiy ishini bajaruvchi funksiya tanasi) } Funksiyani e’lon qilish va uni chaqirish bo’yicha sodda misol ko’ramiz: #include <iostream> using namespace std; int a plus b(int a,int b) { return (a+b); } int main() { int a=0,b=0; cout<<“Ikki sonni yig’indisini aniqlash dasturi:\\n”; cout<<“a sonini kiriting: “; cin>>a; cout<<“b sonini kiriting: “; cin>>b; cout<<a<<” va “<<b<<” sonlarining yig’indisi: “<<a_plus_b(a,b)<<endl; return 0; } C++ dasturlash tilida ma’lumotlarni chiqarish operatorlari. C++ dasturlash tilining elementlari Hozirgi kunda juda ko‘p algoritmik tillar mavjud. Bular ichida Java va C++ dasturlash tillari universal tillar hisoblanib, boshqa tillarga qaraganda imkoniyatlari kengroqdir. So‘ngi yillarda Java va C++ dasturlash tillari juda takomillashib, tobora ommalashib bormoqda. Mazkur tillardagi vositalar zamonaviy kompyuter texnologiyasining hamma talablarini o‘z ichiga olgan va unda dastur tuzuvchi uchun ko‘pgina qulayliklar yaratilgan. C++ 1980 yillar boshida Bjarne Stroustrup tomonidan C tiliga asoslangan tarzda tuzildi. C++ juda ko’p qo’shimchalarni o’z ichiga olgan,

lekin eng asosiysi u obyektlar bilan dasturlashga imkon beradi. Dasturlarni tez va sifatli yozish hozirgi kunda katta ahamiyat kasbetmoqda. Buni ta’minlash uchun obyektli dasturlash g’oyasi ilgari surildi.Huddi 1970 yillar boshida strukturalidasturlash kabi, dasturlarni hayotdagi jismlarni modellashtiruvchi obyektlat orqali tuzish dasturlash sohasida inqilob qildi. C++ dan tashqari boshqa ko'p obyektli dasturlshga yo’naltirilgan tillar paydo bo'ldi. Shulardan eng ko’zga tashlanadigani Xerox ning Palo Altoda joylashgan ilmiy-qidiruv markazida (PARC) tuzilgan Smalltalk dasturlash tilidir. Smalltalk da hamma narsa obyektlarga asoslangan. C++ esa gibrid tildir. Unda C tiliga o’hshab strukturali dasturlash obyektlar bilan dasturlash mumkin. C++ funksiya va obyektlarning juda boy kutubhonasiga ega. Yani C++ dasturlash tilida dasturlashni o’rganish ikki qismga bo’linadi. Birinchisi bu C++ tilini o’zini o’rganish, ikkinchisi esa C++ ning standart kutubhonasidagi tayyor obyekt va funksiyalarni qo’llashni o’rganishdir. C++ dasturlash tilida dastur quyidagi tarkibda tashkil topadi: Direktivalar – funksiyalar kutubxonasini chaqirish. Ular maxsus include katalogida joylashgan va .h kengaytmali fayllar bo’ladi. С ++ tilida masalaning qo’yilishiga qarab kerakli kutubxonalar chaqiriladi. Bus esa dasturning xotiradaegallaydigan joyini minimallashtiradi. C++ dasturlash tili bilan ishlovchi eng sodda dasturlar Dev C++ va CodeBlocks dasturlaridir. Ularning tarkibida 300 dan ortiq kutubxonalar mavjud. Eng ko’p ishlatiladigan kutubxonalar quyidagilar: #include <iostream.h>, #include <math.h> #include <conio.h> #include <graphics.h> #include <memory.h> main ( ) funksiyasi– asosiy degan ma’noni anglatadi. Bu funksiya “{“ belgisidan boshlanadi va dasturning asosini tashkil etuvchi o’zgaruvchilarning toifalari ko’rsatiladi. Dastur “}” belgisi bilan yakunlanishi shart. Agar dasturda qism dasturlardan foydalanilayotgan bo’lsa, ularning nomlari va haqiqiqy parametrlari keltiriladi. So’ngra dasturning asosiy buyruqlari yoziladi. Agar buyruqlar murakkab bo’lsas, ular alohida “{ }” belgilari orasiga olingan bo’lishi kerak. С ++ tilida dasturning asosi bo’lmish buyruqlar kichik harflar bilan yoziladi. Buyruqlar nuqta-verguk bilan (;) yakunlanadi. Buyruqlar bir qator qilib yozilishi ham mumkin. C++ dasturlash tilida dastur funksiya va funksiyalardan tashkil topadi. Agar dastur bir nechta funksiyalardan tashkil topgan bo’lsa, bir funksiyaning

nomi main deb nomlanishi shart. Dastur aynan main funksiyasining birinchi operatoridan boshlab bajariladi. Dasturning 1-satrida #include direktivasi bo‘lib, dastur kodiga oqimli o‘qish/yozish funksiyalari va uning o‘zgaruvchilari e’loni joylashgan iostream.h sarlavha faylini qo‘shadi. Keyingi qatorlarda dasturning yagona, asosiy funksiyasi main() funksiyasi tavsifi keltirilgan. Shuni qayd etish kerakki, C++ dasturida albatta main() funksiyasi bo‘lishi shart va dastur shu funksiyani bajarish bilan o‘z ishini boshlaydi. Dastur tanasida konsol rejimi ( Consol – rejimi bu MS DOS oynasi ko’rinishiga o’xshash oyna bo’lib, unda foydalanuvchi dastur tuzuishda faqat dastur kodlari bilan ishlaydi. Graphic interface – rejimida esa faqat tilning kodlari bilangina emas muhitning menyulari, komponentalari bilan ham ishlashi mumkin bo’ladi ) da belgilar ketma-ketligini oqimga chiqarish amali qo‘llanilgan. Ma’lumotlarni standart oqimga (ekranga) chiqarish uchun quyidagi format ishlatilgan: cout << <ifoda>; Bu yerda <ifoda> sifatida o‘zgaruvchi yoki sintsksisi to‘g‘ri yozilgan va qandaydir qiymat qabul qiluvchi til ifodasi kelishi mumkin (keyinchalik, burchak qavs ichiga olingan o‘zbekcha satr ostini til tarkibiga kirmaydigan tushuncha deb qabul qilish kerak) . cin << a; Ma’lumotlarni klaviatura yordamida kiritish buyrug’i bo’lib, u ham iostream.h kutubxonasi tarkibidagi funksiya hisoblanadi. 1.3 Identifikatorlar va kalit so‘zlar. Dasturlash tillarida identifikator tushunchasi mavjud bo‘lib, dasturda obyektlarni nomlash uchun ishlatiladi. O‘zgar maslarn i, o‘zgaruvchilarni, belgi (metka), protsedura va funksiyalarni belgilashda ishlatiladigan nom identifikatorlar deyiladi. Identifikatorlar lotin alfaviti harflaridan boshlanib, qolgan belgilari harf yoki raqamlar ketma -

ketligidan tashkil topgan bo'lishi mumkin. Masalan: axc, alfa. Dasturlash tillarida dastur bajarilishi vaqtida qiymati o‘zgarmaydigan identifikatorlar o‘zgarmaslar deyiladi. O‘zgarmaslar beshta guruhga bo‘linadi – butun, haqiqiy (suzuvchi nuqtali), sanab o‘tiluvchi, belgi (literli) va satr («string», literli satr). C++ tilida o‘zgarmas ( cons ) – bu fiksirlangan sonni, satrni va belgini ifodalovchi leksema hisoblanadi. Kompilyator o‘zgarmasni leksema sifatida aniqlaydi, unga xotiradan joy ajratadi, ko‘rinishi va qiymatiga (turiga) qarab mos guruhlarga bo’ladi. Butun o‘zgarmaslar: ular quyidagi formatlarda bo’ladi; -o‘nlik-son; -sakkizlik-son; -o‘n.oltilik-son. O’nlik o’zgarmas 0 raqamidan farqli raqamdan boshlanuvchi raqamlar ketma-ketligi va 0 hisoblanadi: 0; 123; 7987; 11. Manfiy o’zgarmas – bu ishorasiz o‘zgarmas bo‘lib, unga faqat ishorani o’zgartirish amali qo‘llanilgan deb hisoblanadi. Sakkizlik o’ 0 raqamidan boshlanuvchi sakkizlik sanoq sistemasi (0,1,..,7) raqamlaridan tashkil topgan raqamlar ketma-ketligi: 023;-0777;-0. O‘n oltilik o‘zgarmas 0x yoki 0X belgilaridan boshlanadigan o‘n oltilik sanoq sistemasi raqamlaridan iborat ketma-ketlik hisoblanadi: 0x1A;-0X9F2D;-0x23. Harf belgilar ixtiyoriy registrlarda berilishi mumkin. Kompilyator sonning qiymatiga qarab unga mos turni belgilaydi. Agar tilda belgilangan turlar dastur tuzuvchini qanoatlantirmasa, u oshkor ravishda turni ko‘rsatishi mumkin. Buning uchun butun o‘zgarmas raqamlari oxiriga, probelsiz l yoki L (1ong), u yoki U (unsigned) yoziladi. Zarur hollarda bitta o‘zgarmas uchun bu belgilarning ikkitasini ham ishlatish mumkin: 451u, 012Ul, 0xA2L. Haqiqiy o‘zgarmaslar: Haqiqiy o‘zgarmaslar – suzuvchi nuqtali son bo‘lib, u ikki xil formatda berilishi mumkin:  O‘nlik fiksirlangan nuqtali formatda. Bu ko‘rinishda son nuqta orqali ajratilgan butun va kasr qismlar ko‘rinishida bo’ladi. Sonning butun yoki kasr qismi bo‘lmasligi mumkin, lekin nuqta albatta bo‘lishi kerak. Fiksirlangan nuqtali o‘zgarmaslarga misollar: 24.56; 13.0; 66.; .87;  eksponensial shaklda haqiqiy o‘zgarmas 6 qismdan iborat bo’ladi: \” 0x22 “ Qo‘shtirnoqni chop etish \? 0x3 Ғ ? So‘roq belgisi