logo

Tanlash operatori va unga doir dastular tuzish

Загружено в:

12.08.2023

Скачано:

0

Размер:

1769.8095703125 KB
Mavzu:  Tanlash operatori va unga doir dastular tuzish  “
                                        M U N D A R I J A
Kirish..............................................................................................................................5
I-BOB.  C++ dasturlash tili haqida tushuncha
1.1   C++   algoritmik   tilining   alifbosi,   o’zgaruvchilar,   o’zgarmaslar   haqida
tushuncha…………………………………………………………………………..
1.2 C++ da Increament va Decreament amallari……………..
II-BOB   Tanlash operatori va unga doir dastular tuzish.
2.1.  C++ dasturlash tilining   tanlash operatori haqida tushuncha . ......................18
2.2   Tanlash operatori va unga doir dastular tuzish   ………………………….22
Xulosa........................................................................................................................40
Foydalanilgan Adabiyotlar........................................................................................43                                                  Kirish
   Inson     turmush   tarzining   rivojlanishi   yangi   yangi   kashfiyotlarning   yartilishiga
sabab bo`lmoqda. Inson yangilik yaratilish jarayonida har xil to`siqlarga duch keladi
va shu to`siqlarni yengish jarayonida yangi ixtirolar vujudgal kelaveradi. Lekin hayot
tajribalardan   ma’lumki,   ko`pinch   yangi   kashfiyot   ma’lum   bir   muommoni   hal   qilish
jarayonida yuzaga keladi. O’zbekiston mustaqillikka erishgandan so’ng uning oldida
iqtisodiy va ijtimoiy rivojlanish uchun, madaniy va ma’naviy yangilanish uchun keng
yo’llar   ochildi.   Mustaqillikning   birinchi   kunidan   boshlab   bozor   iqtisodiyoti,   ishlab
chiqarish, zamonaviy texnalogiyani  tadbiq etish va jahon iqtisodiy aloqalari tizimiga
kirishning eng maqbul yo’llarini qidirish bilan bog’liq bo’lgan muammolarni mustaqil
yechishga to’g’ri keladi.
Shu   bois   respublikaning   barcha   sohalarini   texnik   qayta   qurollantirish,
zamonaviy   texnika   va   texnalogiya   bilanta’minlash   hamda   xalqaro   zamonaviy
talablarga   javob   beruvchi   telekommunikasiyali   va   kompyuterli   aloqa   tizimini
rivojlantirish dolzarb masalalardan biri bo’lib qoldi. 1991 – 1994 yillarda O’zbekiston
hamdos’tlik   davlatlari   orasida   birinchilardan   bo’lib   axborotlashning   yaxlit   davlat
siyosatini   amalgam   oshirishga   asos   soldi.   “Axborotlash   haqida”gi,   “EHM   uchun
dastur   va   ma’lumotlar   bazasini   huquqiy   himoyasi   haqidagi”,   “Aloqalar   haqidagi”
qonunlar   bilan   O’zbekiston   Respublikasini   2010   yilgacha   axborotlash,   qayta
qurishning  milliy dasturi va telekommunikasion tarmoqni rivojlanishining normative
huquqiy asoslari yaratildi va axborot resurslari rivojlanishi  uchun iqtisodiy, tashkiliy
shart-sharoit va kafillik ta’minlandi.
O’bekiston   uchun   mulkchilikning   hususiy   va   aralash     shakllariga   o’tish,
energatik,   xomashyoviy   resurslaridan   unumli   foydalanish   davrida   kompyuter
texnologiyalaridan   milliy   iqtisodni   boshqarishda   foydalanish   toboro   muhim   bo’lib
bormoqda.   1993   –   1995   yillarda   davlat   boshqaruvi   va   bank   muassasalarining informasion tizimlarini kompyuterlashtirishga asosiy etibor beriladi.  Biz kompyuterni
yaratilishini   XX   –   asrning   buyuk   kashfiyotlardan   biri     desak   yanglishmaymiz.   Davr
talabiga   ko`ra   bugunga   kelib   kompyuter   texnalogiysi   juda   rivojlanib   ketdi.
Ma’lumotlarni   boshqarish,   ayniqsa,   hozirgi   kunda   juda   muhum   axamiyat   kasb
etmoqda.   Ma’lumotlarni   boshqarish   tizimlariga   bo`lgan   talab   kun   sayin   ortib
bormoqda.
Fan   va   texnika   rivojlanib   borayotgan   ayni   payitda   ma’lum   bir   sohada   ishni
boshlash   va   uni   boshqarishni   axborot   texnalogiyalarsiz,   jumladan   kompyuter
texnalogiyalarsiz tasavvur qilib bo`lmaydi.  I-BOB.  C++ dasturlash tili haqida tushuncha.
1.1   C++ algoritmik tilining alifbosi, o’zgaruvchilar, o’zgarmaslar haqida tushuncha
Ob’ektga yo‘naltirilgan dasturlash uzoq yillar davomida an’anaviy, ya’ni standart
hisoblangan   dasturlashga   nisbatan   hos   bo‘lgan   tasavvurlarni   bir   chetga   qo‘yishni
talab   qiladi.   Natijada   ob’ektga   yo‘naltirilgan   dasturlash   juda   ham   sodda,
ko‘rgazmaliligi   yuqori   bo‘lib,   dasturiy   ta’minot   yaratishdagi   ko‘plab
muammolarni hal qilishning juda ajoyib vositasiga aylanadi.
C++ algoritmik tilining alifbosi, o’zgaruvchilar, o’zgarmaslar haqida tushuncha.
                                      
 0 dan 9 ga
 katta va kichik lotin harflari;
 cha raqamlari;
 maxsus belgilar (+, -, *, /, =, >, <, {, }, [, ], ‘) ni o’z ichiga oladi.
C++ tilida   so’z   deb bir nechta belgilar ketma-ketligi tushuniladi. Xizmatchi  so’z deb
C++   tilidagi   standart   nom   tushuniladi.   Bu   maxsus   ma’noni   anglatadi   va   uni
ma’lumotlarga berib bo’lmaydi.
Masalan:   int, float, for, while   va hokazo.
C++   tilida   ma’lumotlarning   elementlari   bo’lib   o’zgaruvchilar,   o’zgarmaslar,   izohlar
xizmat qiladi.
O’zgaruvchi: Xotiraning nomlangan qismi bo’lib, o’zida ma’lum bir toifadagi qiymatlarni saqlaydi.
O’zgaruvchining   nomi   va   qiymatlari   bo’ladi.   O’zgaruvchining   nomi   orqali   qiymat
saqlanayotgan   xotira   qismiga   murojaat   qilinadi.   Programma   ishlashi   jarayonida
o’zgaruvchining   qiymatini   o’zgartirish   mumkin.   Har   qanday   o’zgaruvchini
ishlatishdan oldin, uni e’lon qilish lozim.
Quyidagi   butun   sozlardan   foydalanish   uchun   b ,   haqiqiy   sonlardan   foydalanish
uchun   h   o’zgaruvchisi e’lon qilingan:
int   b;
float   h;
O’zgarmaslar (const)
Hisoblash jarayonida qiymatini o’zgartirmaydigan kataliklarga aytiladi.
float const   pi =   3.14;
Programmaning   ma’lum   qismini   tavsiflash   uchun   ishlatiladi   va   bu   qatorda   hech
qanday  aml  bajarilmaydi,  ya’ni  programmaning  biror   qismini   yaxshiroq  tushuntirish
uchun xizmat qiladi. Izoh   «/*»   va   «*/»   simvollari orasida beriladi.
/* Bu yerga izoh yoziladi. */
Bundan   tashqari   birsatrli   izohlardan   ham   foydalanish   mumkin.   Buning   uchun   izoh
boshiga   «//»   belgisi qo’yiladi.
Operator
Tilning   yakunlangan   jumlasi   hisoblanadi   va   ma’lumotlar   taxlilining   tugallangan
bosqichini ifodalaydi. Operator nuqtali vergul   «;»   bilan ajratiladi.
Identifikator Programmist   tomonidan   programma   elementlari   (funksiya,   o’zgaruvchilar,
o’zgarmaslar …) uchun ixtiyoriy nom.
Identifikator tanlanganda quyidagilarga ahamiyat berish kerak:
 Iden tifikator lotin harflaridan boshlanishi shart;
 Ikkinchi simvoldan boshlab raqamlardan foydalanish mumkin;
 C++ da katta kichik harflar  farq qiladi. Ya’ni quyidagilarning har  biri  alohida
identifikator hisoblanadi:     KATTA, katta, KaTTa, kAttA, KattA, …
 Probel   C++   da   so’zlarni   ajratish   uchun   ishlatiladi.   Shuning   uchun
identifikatorda probeldan foydalanib bo’lmaydi.
 Xizmatchi   ( int,   float,   for,   while   kabi)   so’zlardan   identifikator   sifatida
foydalanib bo’lmaydi;
Eslatma
Identifikator   tanlashda   birinchi   belgi   sifatida   «_»   belgisidan   foydalanmaslik   tavsiya
etiladi.
C++ da programma
C++ da programma funksiya yoki funksiyalardan tashkil topadi. Agar programma bir
nechta   funksiyadan   iborat   bo’lsa,   bir   funksiyaning   nomi   main   bo’lishi   shart.
Programma   aynan   main   funksiyasining   birinchi   operatoridan   birinchi   operatoridan
boshlab bajariladi.
Funksiyaning aniqlashishi quyidagicha bo’ladi:
qaytariluvchi_qiymat_toifasi   funksiya_nomi   (   [parametrlar]   ) {
funksiya tanasini tashkil qiluvchi operatorlar
}
Qoida bo’yicha funksiya qandaydir bir qiymatni hisoblash uchun ishlatiladi. Shuning
uchun   funksiya   nomi   oldindan,   funksiya   qaytaradigan   qiymat   toifasi   yoziladi.   Agar
funksiya   hech   qanday   qiymat   qaytarmaydigan   bo’lsa,   void   toifasi   yoziladi.   Agar
funksiya   qaytaradigan   qiymat   toifasi   yozilmagan   bo’lsa,   int   (butun)   toifali   qiymat
qaytariladi deb qabul qilinadi.
Funksiya bilan keyingi mavzularda batafsil tanishamiz.
C++ da oddiy matnni ekranga chiqaruvchi programmani ko’rib chiqamiz
1. # include   <iostream>   // ekranga ma’lumot chiqarish uchun
2.
3. int   main ()
4. {
5.          std   ::   cout << «Salom saytdagilar !»;
6.
7.           return   0;
8. }
Har bir satrni o’rganib chiqamiz: 1,   2,   3-   satrlar   izoh   hisoblanadi.   Malakali   programmistlar   har   qanday   programma
muallif,   programmaning   tuzilish   sanasi   va   maqsadini   ifodalovchi   izoh   bilan
boshlanishini maslahat berishadi.
4,   6,   10-   satrlar   bo’sh   satrlar   hisoblanadi.   Bosh   satrlar   programma   qismlarini   bir-
biridan ajratib qo’yish uchun ishlatiladi. Programma qismlarining bir- biridan ajralib
turishi, programma o’qilishini osonlashtiradi.
5-   satrda,   klaviaturadan   ma’lumotlarni   kiritish   va   ekranga   chiqarish
uchun   <iostream>   sarlavha fayli programmaga qo’shilyapti. Bu satr klaviatura orqali
ma’lumot   kirituvchi   va   ekranga   nimadir   chiqaruvchi   har   qanday   programmada
bo’lishi shart. Aks xolda xato sodir bo’ladi.
Agar   sizning   kompliyatoringiz   eski   bo’lsa,   unda   <iostream.h>   yozishingiz   lozim
bo’ladi.
7-   satrda   butun   toifadagi   qiymat   qaytaruvchi   main   funksiyasi   berilgan   int   xizmatchi
so’zi butun toifadagi ma’lumotlarni e’lon qilishi uchun ishlatiladi.
8- satrdagi ochuvchi figirali { funksiya tanasining boshlanganligini bildiradi.
12- satrdagi yopuvchi figirali } funksiya tanasining tugaganini bildiradi.
9-   satrda   std::cout   <<   orqali   ma’lumotlar   ekranga   chiqariladi.   Qo’shtirnoq   orasida
yozilgan   ma’lumotlar   satr   deyiladi.   Qo’shtirnoq   orasida   nima   yozilsa,   hech   qanday
o’zgarishsiz ekranga chiqariladi.
11- satrdagi return xizmatchi so’zi orqali funksiya 0 qiymat qaytaradi va programma
muvoffaqqiyatli yakunlanadi.
O’zgaruvchilarni e’lon qilish Programmada   ishlatilgan   barcha   o’zgaruvchilarni   qaysi   toifaga   tegishli   ekanligini
e’lon qilish kerak. Ma’lumotlarni e’lon qilishining umumiy ko’rinishi quyidagicha:
toifa_nomi   o’zgaruvchi;
Agar   bir   nechta   o’zgaruvchi   bir   toifaga   mansub   bo’lsa,   ularni   vergul   bilan   ajratib
berish mumkin.
Butun   sonlarni   ifodalash   uchun   int   va   haqiqiy   sonlarni   ifodalash
uchun   float   xizmatchi  so’zlaridan  foydalaniladi. Bu  darsda  shu  2  tasini  bilish  kifoya
qiladi. Keyingi mavzuda butun va haqiqiy sonlar haqida batafsil gaplashamiz
int   x, y;   // butun toifadagi o’zgaruvchilarni e’lon qilish
float   a, b, c;   // haqiqiy toifadagi o’zgaruvchilarni e’lon qilish
Kiritish va chiqarish operatorlari
Programmada   klaviatura   orqali   ma’lumot   kiritish   va   ekranga   chiqarish   uchun
preprotsessor   direktivasini,   ya’ni   #include   <iostream>   ni   programmaga   qo’shish
shart.
Ma’lumot   kiritish   std::cin  >> ,  ma’lumotlarni   chiqarish   std::cout   <<   operatori   orqali
amalga oshiriladi.
std::cin >> a;
Bu   operator   bajarilgan   ekranda   kursor   paydo   bo’ladi.   Kerakli   ma’lumot   klaviatura
orqali kiritilgandan so’ng   Enter   tugmasi bosiladi.
cout   orqali   ekranga   ixtiyoriy   ma’lumotni   chiqarish   mumkin.   Satrli   ma’lumotlarni
ekranga chiqarish uchun, ularni qo’shtirnoq orasida yozish kerak.
Quyidagi a va b sonlarning yig’indisini chiqaruvchi programma berilgan:
// Maqsad: a va b sonlari yig’indisini chiqaruvchi programma #include <iostream>
// standart nomlar fazosidan foydalanishni e’lon qilish
using namespace std;
int   main ()
{
    int   a, b, c;
    cout   <<   «a=» ;   cin   >> a;
    cout   <<   «b=» ;   cin   >> b;
   c=a + b;
    cout   << c <<   endl ;
    return   0;
   }
Arifmetik amallar:
 + qo’shish
 – ayirish
 * ko’paytirish
 / bo’lish
Ba’zi matematik funksiyalar:
Matematik   funksiyalardan   programmada   foydalanish   uchun   math.h   faylini
programmaga qo’shish kerak
#include <math.h>
Funksiyaning C++ da ifodalanishi            Funksiyaning matematik ifodalanishi abs(x) – butun sonlar uchun                                  |x|
fabs(x) – haqiqiy sonlar uchun                          |x|
pow(x, y)                                                                                            x ni y darajasi
sqrt(x)                                                                                                    √x
1.2 C++ da Increament va Decreament amallari.
        Demak,   barcha   dasturlash   tillarida   bo'lgani   kabi   C++   da   ham   Increament   va
Decreament   amallaridan   keng   ko'lamda   qo'llaniladi   ,   Ya'ni   biz   yaratgan
o'zgaruvchimizni   1   ga   orttirmoqchi   bo'lsak   Increament   va   1   ga   kamaytirmoqchi
bo'lsak Decreament amalidan foydalanamiz. Quyidagi misolda ko'rib chiqamiz.
#include<iostream>    
using namespace std ;  
int main(){
int a=5;    // a o'zgaruvchimiz 5 ga teng bo'lsin
a++;   // Increament amalidan foydalandik,o'zgaruvchimiz birga ortdi.
 
a--;    // Decreament amalidan foydalandik, o'zgaruvchimiz birga kamaydi.
cout<<a;    //ekranda chop etish uchun cout funksiyamizdan foydalanamiz
return 0; }
Ekranda:   5
Ma'lumot turlari.
      O'tgan maqolamizda   int   va   char   ma'lumot turlari haqida qisqacha to'xtalib o'tgandik
bugun   ular   haqida   to'liqroq   o'rganishga   harakat   qilamiz.   Demak,     C++   tilida   ham
o’zgaruvchilarning   turlari   bir   necha   guruhlarga   ajraladi.   Ularni   quyida   qarab
chiqamiz.   
Butun son turlari.  
    Butun   son   qiymatlarni   qabul   qiladigan
o‘zgaruvchilar   int( butun ) ,   short( qisqa )   va     long( uzun )   kalit so‘zlar bilan aniqlanadi .
  Belgi turi.  
      Belgi turidagi o‘zgaruvchilar ko'rib chiqganimizdek   char   kalit so‘zi bilan beriladi..
Belgi   turidagi   qiymatlar   nisbatan   murakkab   bo‘lgan   tuzilmalar   –   satrlar,   belgilar
massivlari va hokazolarni hosil qilishda ishlatiladi.  
Haqiqiy son turi.  
      Haqiqiy   sonlar   float   kalit   so‘zi   bilan   e’lon   qilinadi.   Agar   kasrli   son   juda   katta
(kichik)   qiymatlarni   qabul   qiladigan   bo‘lsa,   u   xotirada     8   yoki   10   baytli   ikkilangan
aniqlik ko‘rinishida saqlanadi va mos   double   va   long double   kalit so‘zlari bilan e’lon
qilinadi.  
Mantiqiy tur.  
        Bu   turdagi   o‘zgaruvchi   bool   kalit   so‘zi   bilan   e’lon   qilinib,   (false,   yolg‘on)   yoki
(true,   rost)   qiymat   qabul   qiladi.   Mantiqiy   tur   o‘zgaruvchilar   qiymatlar   o‘rtasidagi
munosabatlarni   ifodalaydigan   mulohazalarni   rost   ( true )   yoki   yolg‘on   ( false )   ekanligi tavsifida     qo‘llaniladi     va   ular     qabul   qiladigan     qiymatlar     matematik   mantiq
qonuniyatlariga asoslanadi. Mantiqiy mulohazalar ustida uchta amal aniqlangan:   
Void turi.  
      C++   tilida     void   turi   aniqlangan   bo’lib   bu   turdagi   dastur   obyekti   hech   qanday
qiymatga   ega   bo‘lmaydi   va   bu   turdan   qurilmaning   til   sintsksisiga   mos   kelishini
ta’minlash uchun ishlatiladi. Masalan, C++ tili sintsksisi funksiya qiymat qaytarishini
talab   qiladi.   Agar   funksiya   qiymat   qaytarmaydigan   bo‘lsa,   u   void   kalit   so‘zi   bilan
e’lon qilinadi.  
  int   a=0 A=1;
  float   аbс=17.5;  
double   Ildiz;  
bool   ok=true;  
char   LETTER=’z’;  
Void   funksiya();    // funksiya qaytaradigan    qiymat inobatga    olinmaydi  
  Turni boshqa turga keltirish.
        C++   tilida   bir   turni   boshqa   turga   keltirishning   oshkor   va   oshkormas   yo‘llari
mavjud.   Umuman   olganda,   turni   boshqa   turga   oshkormas   keltirish   ifodada   har   xil
turdagi   o‘zgaruvchilar   qatnashgan   hollarda   amal   qiladi   (aralash   turlar   arifmetikasi).
Ayrim   hollarda,   xususan   tayanch   turlar   bilan   bog‘liq   turga   keltirish   amallarida
xatoliklar   yuzaga   kelishi   mumkin.   Masalan,   hisoblash   natijasining   xotiradan
vaqtincha   egallagan   joyi   uzunligi,   uni   o‘zlashtiradigan   o‘zgaruvchi   uchun   ajratilgan
joy   uzunligidan   katta   bo‘lsa,   qiymatga   ega   razryadlarni   yo‘qotish   holati   yuz   beradi.
Oshkor   ravishda   turga   keltirishda,   o‘zgaruvchi   oldiga   qavs   ichida   boshqa   tur   nomi
yoziladi:
 #include <iostream>  
 int main() { 
 int a=54;
 
 int b; 
 float floating=15.854; 
 a=(int) floating; // oshkor keltirish;  
 b=(int) floating // oshkormas keltirish;  
 cout<<’’yangi butun son (oshkor ravishda): ‘’<<a<<’’\n’’; 
 
 cout<<’’yangi butun son (oshkormas ravishda): ‘’<<b<<’’\n’’; 
 
 return 0;  
 } 
Ekranda:
   yangi butun son ( oshkor ravishda): 15
   yangi butun son ( oshkor ravishda): 15  
  O zgarmaslarni,   o zgaruvchilarni,   belgi(metka),   protsedura   va   funksiyalarniʼ ʼ
belgilashda   ishlatiladigan   nom   identifikatorlar   deyiladi.   Identifikatorlarda   birinchi belgi lotin alfaviti harflaridan yoki pastki  chiziq, qolgan belgilari harf yoki raqamlar
ketma-ketligidan   tashkil   topgan   bo lishi   mumkin.   Identifikator   ichida   bo'shliqʼ
bo`lmasligi kerak. 
•   Masalan:   v1,   _sum   Kalit   so'zlar   Kalit   so'zlar   -   kompilyator   uchun   alohida
ahamiyatga ega bo'lgan ajratilgan identifikatorlar.
 C ++ kalit so'zlar ro'yxati:
Dasturlash tillarida dastur bajarilishi vaqtida qiymati o zgarmaydigan identifikatorlar	
ʼ
o zgarmaslar   deyiladi.   O`zgarmaslarning   Butun,   haqiqiy,   belgili   va   satr   turidagi	
ʼ
mavjud.   Amal   belgisi   –   operandlar   ustida   bajariladigan   amallarni   belgilaydigan   bir
yoki   bir   nechta   belgilar.   Amallar   ishtirok   etadigan   operandalar   soniga   ko'ra   unar,
binar   va   ternar   turlarga   bo'linadi.   O'zgaruvchi   -   ma'lum   bir   turdagi   ma'lumotlar
saqlanadigan   xotiraning   nomlangan   maydoni.   O'zgaruvchiga   berilgan   ma'lumot
qiymat   deb   ataladi.   Dastur   davomida   o'zgaruvchining   qiymati   o'zgarishi   mumkin.
Ishlatishdan   oldin   har   qanday   o'zgaruvchini   e'lon   qilish   kerak,   ya'ni,   nomi,   turi   va
(ixtiyoriy) boshlang'ich qiymati e`lon qilinadi. Sharhlar alohida qismlarni yoki butun
dasturni tushuntirish uchun ishlatiladi. Kompilyator sharhlarni e'tiborsiz qoldiradi.  C ++ dasturi sharhlarning ikkita shaklidan foydalanadi:
 • sharh ikkita // belgi bilan boshlanadi. 
Masalan,
sharh quyidagi belgilar orasida yoziladi / * ... * /, masalan,
Ma'lumotlarning asosiy turlari:
 Asosiy ma'lumotlar turlari quyidagilardan iborat: 
• int (butun son);
 • char (belgi); 
• wchar_t (kengaytirilgan belgi);
 • bool (mantiqiy);
 • float (haqiqiy); 
• double(ikkilangan aniqlikdagi haqiqiy).  Standart turlarning qiymatlar diapazonini aniqlash uchun to'rt turdagi spetsifikatorlar
ishlatiladi: 
• short(qisqa); 
• long(uzun); 
• signed (imzolangan); 
• unsigned(imzo qo'yilmagan). 
Void turi C++ tilining asosiy turlaridan biri. Ushbu turning qiymatlari bo'sh to`plamni
tashkil etadi. Undan qiymatni qaytarmaydigan funksiyalarni aniqlash uchun, funksiya
argumentining bo'sh ro'yxatini ko'rsatish uchun ishlatiladi. Eng oddiy dasturni ko'rib
chiqamiz:
Birinchi   satrda   ma’lumotlarni   kiritish/chiqishni   boshqarish   uchun   zarur   ma'lumotni
o`z   ichiga   oluvchi   faylini   kiritish   uchun   #include   direktivasidan   foydalaniladi.
Keyingi   using   ko`rsatmasi   yordamida   C++   tilining   standart   kutubxonasi   vositalarini
belgilaydigan   std   nomlar   fazosi   islatiladi.   (Nomlar   fazosi   -   bu   identifikatorlarni
mantiqiy   guruhlash   uchun   yaratilgan   to'plamdir).   Har   qanday   C++   dasturi   main   ()
funksiya bilan boshlanadi. Ushbu funksiya to'rt elementni o'z ichiga oladi: 
• qaytish turi (bizning holatlarimizda int ); 
• funksiya nomi (main); 
• Qavslar ichidagi parametrlar ro'yxati (bu holda ro'yxat bo'sh);  •   figurali   qavslar   bilan   chegaralangan,   ko'rsatmalar   blokini   ifodalovchi   funksiya
tanasi. Ko'rsatma - bu harakatni belgilaydigan dasturning qismi. Bizning dasturimizda
funksiya tanasi ikkita ko'rsatmalarni o'z ichiga oladi:
 cout << "Hello, World!"; 
return 0; 
Dastlab,   ekranga   Hello,   World   satri   chiqariladi,   so`ng   dastur   muvaffaqiyatli
bajarilganligini   anglatuvchi   0   raqami   chiqariladi.   C++   tilidagi   har   bir   buyruq
nuqtavergul bilan tugaydi. Quyidagi istisnolar mavjud: 
# Belgi bilan boshlanadigan protsessor protseduralari (masalan, , #include); 
•   figurali   qavs   bilan   chegaralangan   murakkab   operatorlar   va   funksiyani   aniqlash
bloklari - {}. 
Arifmetik   amallar   Ko'p   dasturlar   ijro   davomida   arifmetik   amallarni   bajaradi.   C++
dagi amallar quyidagi jadvalda berilgan. Ular ikkita operand bilan ishlatiladi Ifodalar ba'zi qiymatlarni hisoblash uchun ishlatiladigan dasturlarning asosiy tarkibiy
elementlaridir.   Ifodalar   operandalar,   amal   belgilari   va   qavslardan   iborat.   Operandlar hisoblash uchun ma'lumotlarni beradi. Operatsiyalar, ustuvorliklarga muvofiq, kerakli
harakatlarni aniqlaydi. O'zgaruvchini e`lon qilishning umumiy shakli quyidagicha: tur
Bu   yerda   tur   -   bu   ma'lumotlar   turi;   o'zgaruvchilar   ro`yxati   -   ko'rsatilgan   turdagi
o'zgaruvchan nomlar ro'yxati. O'zgaruvchilarni e’lon qilishga misollar: 
• int i, k, x; 
•   double   d,   dBalans;   E’lon   qilish   jarayonida   o'zgaruvchini   inisializatsiya   qilish
mumkin: • teng belgi bilan: 
int a = 10, b = 20;
 Ma’lumotlarni kiritish operatori:
  cin>>1-o`zgaruvchi>>2-o`zgaruvchi>>…>>no`zgaruvchi;     yoki   cin>>o`zgaruvchi
nomi;
  Misol:  cin>>x>>y; Ushbu buyruqdan keyin konsol oynasida x,y o`zgaruvchilarning
qiymatlarini   kiritish   so`raladi.   Ma’lumotlarni   chiqarish   operatori:   Cout<<1-
o`zgaruvchi<<2-o`zgaruvchi<<…<<<<x<<<<< II-BOB   Tanlash operatori va unga doir dastular tuzish.
2.1.  C++ dasturlash tilining   tanlash operatori haqida tushuncha .
C + +   S w i t c h   ( Ta n l a s h   O p e r a t o r i )
As sa l o m u   al ay ku m   us hb u   dar sg a   xo 's h   k el i b si z   bu gu n   s i z   b i l an   t a nl as h
op er at or i   bi l an   t an i s hi b   ch i q am i z .   T a nl as h   o per at or i da n   f oy da l a ni sh i m i z
uc hu n   sw i t ch   ka l i t   so 'z i d an   f o yd al an am i z .   U sh bu   op er at or n i
qo 'l l a m a sd an   sh ar t   o pe ra t o ri   da n   f oy da l a ns an gi z   h am   bo 'l ad i ,
am m o   sw i t ch   an ch a   i s hi ng i z   y en gi l l as ha di .   De m a k   ko dl ar n i   a na l i z   qi l i s hn i
bo sh l a ym i z .
Sw i t c h   t a nl as h  o pe r a t or i n i n g  si nt ak si s  k o'r i n i s hi .
switch (qiymat) {
    case  x:
        // code block
        break ;
    case  y:
        // code block
        break ;
    default :
        // code block
}
Bu   quy i da gi ch a  i s hl ay di :
 s w i t c h I f o d a   b i r   m a r t a   b a h o l a n a d i
 I f o d a n i n g   q i y m a t i   h a r   b i r i n i n g   q i y m a t l a r i   b i l a n   t a q q o s l a n a d i   c a s e
 A g a r   m o s   k e l a d i g a n   b o ' l s a ,   t e g i s h l i   k o d   b l o k i   b a j a r i l a d i  b r e a k   t a n l a s h   o p e r a t o r i n i   i s h i n i   y a k u n l a y d i
 d e f a u l t k a l i t   s o ' z l a r   i x t i y o r i y   b o ' l g a n   q i y m a t   u c h u n   i s h l a y d i .
y u q o r i d a g i   b i r o n t a s i   m o s   k e l m a s i   d e m a k   d e f a u l t   i s h l a y d i .
Qu yi da gi   m i so l d a   ha f t a   k un l ar i   n om i ni   hi so bl as h   u ch un   sw i t ch   i s h
ku ni ni ng  r a qa m i  i sh l a t i l a di :
# include   <iostream>
using   namespace  std;
int   main () {
    int  day =  4 ;
    switch  (day) {
    case   1 :
        cout <<  "Dushanba" ;
        break ;
    case   2 :
        cout <<  "Seshanba" ;
        break ;
    case   3 :
        cout <<  "Chorshanba" ;
        break ;
    case   4 :
        cout <<  "Payshanba" ;
        break ;
    case   5 :         cout <<  "Juma" ;
        break ;
    case   6 :
        cout <<  "Shanba" ;
      break ;
    case   7 :
        cout <<  "Yakshanba" ;
        break ;
  }
    return   0 ;
}
Payshanba
2.2  Tanlash operatori va unga doir dastular tuzish
Tanlash   operatori   bizga   bir   nechta   qiymatlardan,   o’zgaruvchilarga   to’g’ri   keluvchi
qiymatni   tanlashda   va   uni   ishga   tushirishda   ishlatiladi.   Misol   uchun   hafta   kunlarini
raqamidan topish topshiriq sifatida berildi. Ularni bemalol topishimiz mumkin, lekin
kompyuterga   uni   qanday   tushuntiramiz?   Buni   bilish   uchun   ushbu   maqolamni   o’qib
chiqishingizni tavsiya qilaman
Sintaksis
switch   ( < o'zgaruvchi > )
{
case   < o'zgarmas ifoda1 >   :   < operator   1> ;   break ;
case   < o'zgarmas ifoda2 >   :   < operator   2> ;   break ;
.. . case   < o'zgarmas ifodaN >   :   < operator  N > ;   break ;
default   :   operator  N  +   1 ;   break ;
}
Copied!
switch   kalit   so’zini   yozganimizdan   so’ng   qavslar   ichiga   biror-bir   o’zgaruvchini
kiritishimiz zarur shundan so’ng jingalak qavslar ochamiz va tanlash maqsadida   case
kalit   so’zlarini   kiritamiz   va   undan   so’ng   ifodamizni   kiritamiz   va   uni   nima   vazifa
bajarishini   operatorlar   yordamida   yozishimiz   kerak   bo’ladi,   bir   nechta   (siz
xohlagancha) qiymatlar berilgandan so’ng o’zgaruvchiga to’g’ri kelmaydigan qiymat
lar ham berilishi mumkin, bunday holatlarda  default  kalit so’zidan foydalangan holda
operatorlarni kiritib tanlash operatorimizga yakun yasaymiz!!!
Masala
Har bir hafta kunlarining raqamiga moslab ularni biriktirib qo’ying, aks holda “Bugun
ahvollar joyidami og’ayni???” degan javob qaytarilsin.
int  n ;
Console . Write ( "Hafta kunini kiriting = " );
n  =   int . Parse ( Console . ReadLine ());
switch   ( n )
{
case   1 :  
Console . WriteLine ( "Dushanba" );   break ;
case   2 :  
Console . WriteLine ( "Seshanba" );   break ;
case   3 :  
Console . WriteLine ( "Chorshanba" );   break ;
case   4 :   Console . WriteLine ( "Payshanba" );   break ;
case   5 :  
Console . WriteLine ( "Juma" );   break ;
case   6 :  
Console . WriteLine ( "Shanba" );   break ;
case   7 :  
Console . WriteLine ( "Yakshanba" );   break ;
default :  
Console . WriteLine ( "Bugun ahvollar joyidami og'ayni???" );   break ;
}
Copied!
default   -   Odatda   case   ichida   e'lon   qilinmagan   ifodaga   nisbatan   qo'llaniladi.   Ya'ni
agarda   case   ichidagi   ifoda   uchun   mos   kelmasa,   C#   odatiy   operatorlarni   ishga
tushiradi.   (Xullas   kiritilgan   qiymatlardan   bittasi   ham   to'g'ri   kelmasa,   default   da
berilgan qiymatni qabul qiladi)
break   - Ma'lum bir ifodaga tegishli operatordan keyin qo'yiladigan kalit so'z. C# tili
e'lon   qilingan   operatorni   ishga   tushirgandan   so'ng,   u   ushbu   so'zni   o'qiydi   va   kodni
to'xtatadi. 
Dasturlash   tillarida   algoritmlarni   dasturini   tuzish   vaqtida   shartlarning
qiymatlari   ikki   va   undan   ortiq   bo’lgan   holatlarda   dastur   tuzuvchilarga   bir   muncha
qiyinchiliklar   tug‘diradi.   Agar   shartlar   qiymati   ikkitadan   ortiq   holatlarni   e‘tiborga
olish kerak bo‗lgan holatlarda har bir shart uchun kod yozishga to‗g‘ri keladi. Agar
shartlar soni  ko’p bo’lgan holatlarda, albatta, biz tanlash operatorlaridan foydalanish
maqsadga   muvofiqdir.   C++   dasturlash   tilida   tanlash   jarayonlarini   if   qisqa   shartli
operator  ko‗rinishda ham  ifodalash  mumkin. Bunday holatda, albatta, har  bir  tanlov
uchun shartli kod yoziladi.  Misol: Ranglarni ajratadigan robit faqat mevalar tartib raqamiga qarab ajratadi.
Siz robitga mevalar ajratishga yordam bering(1-olma, 2-tarvuz, 3-shaftoli, 4- avakado,
5-yongoq, 6-zaytun). 
#include 
int main () {
 int i;
cout<<”mevalar tartib raqamini kiriting”;
cin>>i;
if(i==1) cout<<” olma”;
if(i==2) cout<< ”tarvuz”;
if(i==3) cout<< “shaftoli”;
if(i==4) cout<<” avakado”;
if(i==5) cout<<”yongoq”;
if(i==6) cout<<” zaytun”;
return 0
}
Dastur ishlatilganda
i=4  avakado
i=6 zaytun
                          Dastur tanasida bitta buyruq bajarilmasdan keyingisiga o‘tish uchun continue 
operatoridan foydalaniladi. Continue operatori ham break operatoriga o‗xshaydi, 
lekin bunda faqat bitta bo‗yruqni cheklab o‗tadi. Asosan takrorlanish jarayonlarida 
ma‘lum bir holatlarda takrorlanishning ba‘zi bir holatlari hisoblanmaslik kerak 
bo‗lganda continue operatoridan foydalanish maqsadga muvofiq bo‗ladi.
Takrorlanish   jarayonida   takrorlanishning   biror   bir   qadamini   tashlab
ikkinchisiga o’tish uchun continue bo‗yrug‘idan foydalanish qulay hisoblanadi .
Misol:1 dan 9 gacha bolgan raqamlar orasidan 3 va 7 ajratib yozing.
 #include int main ()
 { int x=9; 
for(int i=1;i<=x;i++) {if((i==3)||(i=7)) continue;
 cout<<i;
return 0;
}
Dastur natijasi
                                                      
                                                                              XULOSA
 
Globallashuv jarayoni ta'limda axborot-kommunikatsiya texnologiyalari (AKT)
dan   keng   foydalanishni   talab   etadi.   O‘qitishning   zamonaviy   usullari   va   axborot-
kommunikatsiya   texnologiyalarini   qo‘llamasdan   turib,   o‘qituvchi   o‘z   kasbiy
faoliyatida   samarali   natijalarga   erisha   olmaydi.   Ammo   bunda   ta'limning   maqsad   va
mazmuni,   usul   va   vositalari   hamda   tashkiliy   shakllarini   to‘g‘ri   tanlash   muhim
ahamiyatga ega.
Axborot   texnologiyalari   qo‘llanadigan   darslarning   qulayligi   shundaki,   unda
o‘quvchining   o‘quv   materiallarini   o‘zlashtirib   olayotganligini   doimiy   ketma   –   ket
kuzatishga, nazorat olib borishga, kerak holarda tuzatishlar kiritib borishga imkoniyat
yaratiladi.
Ta'lim   jarayonida   axborot   –   kommunikatsiya   texnologiyalaridan   foydalanish
zamon   talabidir.   O‘qitishning   zamonaviy   usullari   va   axborot   –   kommunikatsiya
texnologiyalarini   qo‘llamasdan   turib,   o‘qituvchi   o‘z   kasbiy   faoliyatida   samarali
natijalarga   erisha   olmaydi.   Ammo   bunda   ta'limning   maqsad   va   mazmuni,   usul   va
vositalari hamda tashkiliy shakllarini to‘g‘ri tanlash muhim ahamiyatga ega.
Axborot-kommunikatsiya   texnologiyalari   vositalarining   ta'limning   boshqa
texnik   vositalariga   qaraganda   asosiy   ustunliklari   nozikligi,   ta'limning   turli   modellari
va   algoritmlariga   sozlash,   shuningdek,   har   bir   ta'lim   oluvchining   xatti-harakatlariga
yakka   tartibda   reaksiya   qilish   imkoniyati   sanaladi.   Aynan,   shu   nuqtai   nazardan
kompyuter ta'lim sohasi uchun nihoyatda keng imkoniyatlar taqdim qiladi. Foydalanilgan adabiyotlar  
1 .C++ dasturlash tili o’quv qo’llanma kasb xunar kollejlari uchun
3. S.Rahmonqulov “IBM PC shaxsiy kompyuterida ishlash”,  Т .: “Sharq”, 1998.
4. A. Axmedov N. Taylaqov “Informatika”, Toshkent “O’zbekiston”, 2001.
5. A. Abduqodirov va boshqalar “Informatika”,  Т .: “Me’ros”. 2002.
6.   A.   Sattorov   «Informatika   va   axborot   texnologiyalari»   Toshkent   «O’qituvchi»,
2002.
7. http://www.microsoft.com/
8. http://www.ziyonet.uz/
9.http://www.ref.uz/

Mavzu: Tanlash operatori va unga doir dastular tuzish “ M U N D A R I J A Kirish..............................................................................................................................5 I-BOB. C++ dasturlash tili haqida tushuncha 1.1 C++ algoritmik tilining alifbosi, o’zgaruvchilar, o’zgarmaslar haqida tushuncha………………………………………………………………………….. 1.2 C++ da Increament va Decreament amallari…………….. II-BOB Tanlash operatori va unga doir dastular tuzish. 2.1. C++ dasturlash tilining tanlash operatori haqida tushuncha . ......................18 2.2 Tanlash operatori va unga doir dastular tuzish ………………………….22 Xulosa........................................................................................................................40 Foydalanilgan Adabiyotlar........................................................................................43

Kirish Inson turmush tarzining rivojlanishi yangi yangi kashfiyotlarning yartilishiga sabab bo`lmoqda. Inson yangilik yaratilish jarayonida har xil to`siqlarga duch keladi va shu to`siqlarni yengish jarayonida yangi ixtirolar vujudgal kelaveradi. Lekin hayot tajribalardan ma’lumki, ko`pinch yangi kashfiyot ma’lum bir muommoni hal qilish jarayonida yuzaga keladi. O’zbekiston mustaqillikka erishgandan so’ng uning oldida iqtisodiy va ijtimoiy rivojlanish uchun, madaniy va ma’naviy yangilanish uchun keng yo’llar ochildi. Mustaqillikning birinchi kunidan boshlab bozor iqtisodiyoti, ishlab chiqarish, zamonaviy texnalogiyani tadbiq etish va jahon iqtisodiy aloqalari tizimiga kirishning eng maqbul yo’llarini qidirish bilan bog’liq bo’lgan muammolarni mustaqil yechishga to’g’ri keladi. Shu bois respublikaning barcha sohalarini texnik qayta qurollantirish, zamonaviy texnika va texnalogiya bilanta’minlash hamda xalqaro zamonaviy talablarga javob beruvchi telekommunikasiyali va kompyuterli aloqa tizimini rivojlantirish dolzarb masalalardan biri bo’lib qoldi. 1991 – 1994 yillarda O’zbekiston hamdos’tlik davlatlari orasida birinchilardan bo’lib axborotlashning yaxlit davlat siyosatini amalgam oshirishga asos soldi. “Axborotlash haqida”gi, “EHM uchun dastur va ma’lumotlar bazasini huquqiy himoyasi haqidagi”, “Aloqalar haqidagi” qonunlar bilan O’zbekiston Respublikasini 2010 yilgacha axborotlash, qayta qurishning milliy dasturi va telekommunikasion tarmoqni rivojlanishining normative huquqiy asoslari yaratildi va axborot resurslari rivojlanishi uchun iqtisodiy, tashkiliy shart-sharoit va kafillik ta’minlandi. O’bekiston uchun mulkchilikning hususiy va aralash shakllariga o’tish, energatik, xomashyoviy resurslaridan unumli foydalanish davrida kompyuter texnologiyalaridan milliy iqtisodni boshqarishda foydalanish toboro muhim bo’lib bormoqda. 1993 – 1995 yillarda davlat boshqaruvi va bank muassasalarining

informasion tizimlarini kompyuterlashtirishga asosiy etibor beriladi. Biz kompyuterni yaratilishini XX – asrning buyuk kashfiyotlardan biri desak yanglishmaymiz. Davr talabiga ko`ra bugunga kelib kompyuter texnalogiysi juda rivojlanib ketdi. Ma’lumotlarni boshqarish, ayniqsa, hozirgi kunda juda muhum axamiyat kasb etmoqda. Ma’lumotlarni boshqarish tizimlariga bo`lgan talab kun sayin ortib bormoqda. Fan va texnika rivojlanib borayotgan ayni payitda ma’lum bir sohada ishni boshlash va uni boshqarishni axborot texnalogiyalarsiz, jumladan kompyuter texnalogiyalarsiz tasavvur qilib bo`lmaydi.

I-BOB. C++ dasturlash tili haqida tushuncha. 1.1 C++ algoritmik tilining alifbosi, o’zgaruvchilar, o’zgarmaslar haqida tushuncha Ob’ektga yo‘naltirilgan dasturlash uzoq yillar davomida an’anaviy, ya’ni standart hisoblangan dasturlashga nisbatan hos bo‘lgan tasavvurlarni bir chetga qo‘yishni talab qiladi. Natijada ob’ektga yo‘naltirilgan dasturlash juda ham sodda, ko‘rgazmaliligi yuqori bo‘lib, dasturiy ta’minot yaratishdagi ko‘plab muammolarni hal qilishning juda ajoyib vositasiga aylanadi. C++ algoritmik tilining alifbosi, o’zgaruvchilar, o’zgarmaslar haqida tushuncha.  0 dan 9 ga  katta va kichik lotin harflari;  cha raqamlari;  maxsus belgilar (+, -, *, /, =, >, <, {, }, [, ], ‘) ni o’z ichiga oladi. C++ tilida so’z deb bir nechta belgilar ketma-ketligi tushuniladi. Xizmatchi so’z deb C++ tilidagi standart nom tushuniladi. Bu maxsus ma’noni anglatadi va uni ma’lumotlarga berib bo’lmaydi. Masalan: int, float, for, while va hokazo. C++ tilida ma’lumotlarning elementlari bo’lib o’zgaruvchilar, o’zgarmaslar, izohlar xizmat qiladi. O’zgaruvchi:

Xotiraning nomlangan qismi bo’lib, o’zida ma’lum bir toifadagi qiymatlarni saqlaydi. O’zgaruvchining nomi va qiymatlari bo’ladi. O’zgaruvchining nomi orqali qiymat saqlanayotgan xotira qismiga murojaat qilinadi. Programma ishlashi jarayonida o’zgaruvchining qiymatini o’zgartirish mumkin. Har qanday o’zgaruvchini ishlatishdan oldin, uni e’lon qilish lozim. Quyidagi butun sozlardan foydalanish uchun b , haqiqiy sonlardan foydalanish uchun h o’zgaruvchisi e’lon qilingan: int b; float h; O’zgarmaslar (const) Hisoblash jarayonida qiymatini o’zgartirmaydigan kataliklarga aytiladi. float const pi = 3.14; Programmaning ma’lum qismini tavsiflash uchun ishlatiladi va bu qatorda hech qanday aml bajarilmaydi, ya’ni programmaning biror qismini yaxshiroq tushuntirish uchun xizmat qiladi. Izoh «/*» va «*/» simvollari orasida beriladi. /* Bu yerga izoh yoziladi. */ Bundan tashqari birsatrli izohlardan ham foydalanish mumkin. Buning uchun izoh boshiga «//» belgisi qo’yiladi. Operator Tilning yakunlangan jumlasi hisoblanadi va ma’lumotlar taxlilining tugallangan bosqichini ifodalaydi. Operator nuqtali vergul «;» bilan ajratiladi. Identifikator