1. Dasturiy taminot va uning turlari


C++da massivlar haqida tushuncha. Undan foydalanish qoidalari va



Download 2,42 Mb.
Pdf ko'rish
bet40/51
Sana20.06.2022
Hajmi2,42 Mb.
#685218
1   ...   36   37   38   39   40   41   42   43   ...   51
Bog'liq
1-95 TBCL 103

 
77.C++da massivlar haqida tushuncha. Undan foydalanish qoidalari va 
talablari.
Kompyuter xotirasida ketma-ket (regulyar) joylashgan bir xil turdagi qiymatlarga 
massiv deyiladi. Katta hajmdagi cheklangan va tartiblangan qiymatlarni qayta ishlash bilan 
bog’liq masalalarni yechishda massivlardan foydalanishga zarurat tug‘iladi. Massivlarni 
matematikadagi sonlar vektoriga o‘xshatish mumkin, chunki vektor ham o’zining individual 
nomiga ega va u chekli miqdordagi bir turdagi qiymatlardan, ya‘ni sonlardan iborat. Demak, 
massiv – bu chekli miqdordagi bir turdagi qiymatlar (massiv elementlari)ning tartiblangan 
majmuasidir. Ya‘ni massivdagi barcha elementlar bir xil turga tegishli bo’lishi lozim. Bunday 
tur massiv elementining turi yoki massiv uchun tayanch tur deb ataladi. Dasturda 
ishlatiladigan har bir massiv o’zining individual nomiga ega bo’lishi kerak. Bu nom massiv 
o’zgaruvchisi deyiladi. Massivning har bir elementi massiv nomi, hamda kvadrat qavsga 
olingan va element selektori deb nomlanuvchi indeksni ko’rsatish orqali oshkor ravishda 
belgilanadi. Unga murojaat sintaksisi quyidagicha: []; Bu ko’rinishga 
xususiy o’zgaruvchi deyiladi, chunki uning qiymati massivning alohida elementidir. Umuman 
olganda indeks sifatida ifoda ishlatilishi mumkin. Ifoda qiymati massiv elementi nomerini 
aniqlaydi. Ifoda sifatida o’zgaruvchi ham olinishi mumkin, bunda o’zgaruvchining qiymati 
o’zgarishi bilan murojaat qilinayotgan massiv elementini aniqlovchi indeks ham o’zgaradi. 
Shunday qilib, dasturdagi bitta indeksli o’zgaruvchi orqali massivning barcha elementlarini 
aniqlash mumkin. Haqiqiy turdagi (float, double) qiymatlar to’plami cheksiz bo’lganligi 
sababli ular massiv indeksi sifatida ishlatilmaydi.Programmada ishlatiladigan har bir konkret 
massiv o’zining individual nomiga ega bo’lishi kerak. Bu nomni to’liq o’zgaruvchi deyiladi, 
chunki uning qiymati massivning o’zi bo’ladi. Massivning har bir elementi massiv nomi, 
hamda kvadrat qavsga olingan va element selektori deb nomlanuvchi indeksni ko’rsatish 
orqali oshkor ravishda belgilanadi. Murojaat sintaksisi:
 
[indeks] 


52 
Bu ko’rinishga xususiy o’zgaruvchi deyiladi, chunki uning qiymati mas-sivning alohida 
elementidir. Bizning misolda Reyting massivining alohida komponentalariga 
Reyting[1],…,Reyting[N] xususiy o’zgaruv-chilar orqali murojaat qilish mumkin. Boshqacha 
bu o’zgaruvchilar indeksli o’zgaruvchilar deyiladi. Massiv indeksi sifatida butun son 
qo’llaniladi. Umuman olganda indeks sifatida butun son qiymatini qabul qiladigan ixtiyoriy 
ifoda ishlatilishi mumkin va uning qiymati massiv elementi nomerini aniqlaydi. Ifoda sifatida 
o’zgaruvchi ham olinishi mumkinki, o’zgaruvchining qiymati o’zgarishi bilan murojaat 
qilinayotgan massiv elementini aniqlovchi indeks ham o’zgaradi. Shunday qilib, 
programmadagi bitta indeksli o’zgaruvchi orqali massivning barcha elementlarini belgilash 
(aniqlash) mumkin bo’ladi. Masalan, Reyting[i] o’zgaruvchisi orqali i o’zgaruvchining 
qiymatiga bog’liq ravishda Reyting massivining ixtiyoriy elementiga murojaat qilish mavjud. 
Umuman olganda massiv quyidagi xususiyatlari keltirilgan. 

Massiv - bu elementlar 
to'plamidir. 

Massivdagi barcha elementlar bir xil turda bo’ladi. 

Bunday to'plam to'liq 
to'plamni tashkil qiladi. C++ da massivlar ma'lum turdagi ma'lumotlar elementlarini xotirada 
ketmaketlikda saqlashga imkon beradi.Statik massivlarning kamchiliklari shundaki, ularning 
o’lchami oldindan ma‘lum bo’lishi kerak, bundan tashqari bu o’lcham berilganlarga ajratilgan 
xotira segmentining o’lchami bilan chegaralangan. Ikkinchi tomondan, yetarlicha katta 
o’lchamdagi massiv e‘lon qilib, masala yechilishida ajratilgan xotira to’liq ishlatilmasligi 
mumkin. Bu kamchiliklar dinamik massivlardan foydalanish orqali bartaraf etiladi, chunki 
ular dastur ishlashi jarayonida kerakli o’lchamdagi massivlarni yaratish va ularga zarurat 
qolmaganda yo’qotish imkoniyatini beradi.Dinamik massivlarga xotiradan joy ajratish uchun 
malloc(), calloc() funksiyalaridan yoki new operatoridan foydalaniladi. Dinamik massivga 
ajratilgan xotirani bo’shatish uchun free() funksiyasi yoki delete operatori ishlatiladi. 

Download 2,42 Mb.

Do'stlaringiz bilan baham:
1   ...   36   37   38   39   40   41   42   43   ...   51




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