15-mavzu: Massivlar Reja Massiv tushunchasi




Download 478.01 Kb.
Pdf ko'rish
bet1/3
Sana10.09.2023
Hajmi478.01 Kb.
#81075
  1   2   3
Bog'liq
1-mavzu ppt, NUD Suv avtomatikasi, 16


15-mavzu: Massivlar 
Reja 
1. Massiv tushunchasi;
 
2. Massiv turlari;
 
3. Massiv o’lchamlar. 
Massiv tushunchasi 
Biz bu bobni massiv ma’lumotlar turini tanishtirishdan boshlaymiz. 
Massivlar bir necha qiymatlarni yig‘ish uchun C++ da asosiy mexanizm 
hisoblanadi. Quyidagi bo‘limlarda siz massivlarni qanday aniqlashni va massiv 
elementlaridan qanday foydalanishni o‘rganib olasiz. Vektorlarni aniqlash 
deylik siz qiymatlar ketma -ketligini o‘quvchi va ketma ketlikni chop etuvchi 
dastur yozmoqchisiz, buning uchun siz eng katta qiymatni quyida berilgan 
ko‘rinishda belgilang: 
32 
54 
67.5 
29 
34.5 
80 
115 <= eng katta qiymat 
44.5 
100 
65 
Bu qiymatlarni barchasini ko‘rmasdan turib, siz qaysi birini eng katta qiymat deb 
belgilash kerakligini bilmaysiz.Oxir oqibat, oxirgi qiymat eng kattasi bo‘lishi 
mumkin. SHuning uchun, dastur chop etishdan oldin birinchi navbatda barcha 
qiymatlarni saqlab olishi kerak. Har qaysi qiymatni alohida o‘zgaruvchida 
oddiygina saqlasangiz bo‘lmasmidi? Bilsangiz, o‘nta o‘zgaruvchini ya’ni qiymat 1 
(value1), qiymat 2 (value2), qiymat 3 (value3), …, qiymat 10(value10 )larni o‘nta 
o‘zgaruvchida saqlovchi o‘nta kirituvchi mavjud.Biroq, bunday o‘zgaruvchilarning 
ketma - ketligi foydalanish uchun noqulay.Siz, har qaysi o‘zgaruvchi uchun oddiy 
kodni o‘n marotaba yozishishga to‘g‘ri keladi. Bu muammoni hal etish uchun 
massivdan foydalaning: qiymatlar ketma - ketligini saqlovchi struktura (tuzilma). 
Xotirada ketma-ket (regulyar) joylashgan bir xil turdagi qiymatlarga massiv 
deyiladi. 
2. Massiv turlari 
Odatda massivlarga zarurat, katta hajmdagi, lekin cheklangan miqdordagi va 
tartiblangan qiymatlarni qayta ishlash bilan bog‘liq masalalarni yechishda yuzaga 
keladi. Faraz qilaylik, talabalar guruhining reyting ballari bilan ishlash masalasi 
qo‘yilgan. Unda guruhning o‘rtacha reytingini aniqlash, reytinglarni kamayishi 
bo‘yicha tartiblash, konkret talabaning reytingi haqida ma’lumot berish va 
boshqa masala ostilarini yechish zarur bo‘lsin. Qayd etilgan masalalarni yechish 
uchun berilganlarning (reytinglarning) tartib-langan ketma-ketligi zarur bo‘ladi. Bu 
yerda tartiblanganlik ma’nosi shundaki, ketma-ketlikning har bir qiymati o‘z 
o‘rniga ega bo‘ladi (birinchi talabaning reytingi massivda birinchi o‘rinda, ikkinchi 


talabaniki - ikkinchi o‘rinda va hakoza). Berilganlar ketma-ket-ligini ikki xil 
usulda hosil qilish mumkin. Birinchi yo‘l - har bir reyting uchun alohida 
o‘zgaruvchi aniqlash: 
Reyting1,…,ReytingN. Lekin, guruhdagi talabalar soni etarlicha katta bo‘lganda, 
bu o‘zgaruv-chilar qatnashgan dasturni tuzish katta qiyinchiliklarni yuzaga 
keltiradi. Ikkinchi yo‘l - berilganlar ketmaketligini yagona nom bilan aniqlab, 
uning qiymatlariga murojaatni, shu qiymatlarning ketma-ketlikda joylashgan 
o‘rnining nomeri (indeksi) orqali amalga oshirishdir. Reytinglar ketma-ketligini 
Reyting deb nomlab, undagi qiymatlariga Reyting1,…,ReytingN ko‘rinishida 
murojaat qilish mumkin. Odatda berilganlarning bunday ko‘rinishiga massivlar 
deyiladi. Massivlarni matematikadagi sonlar vektoriga o‘xshatish mumkin, chunki 
vektor ham o‘zining individual nomiga ega va u fiksirlangan miqdordagi bir 
turdagi qiymatlardan - sonlardan iboratdir. 
Demak, massiv - bu fiksirlangan miqdordagi ayrim qiymatlarning (massiv 
elementlarining) tartiblangan majmuasidir. Barcha elementlar bir xil turda bo‘lishi 
kerak va bu tur element turi yoki massiv uchun tayanch tur deb nomlanadi. 
Yuqoridagi keltirilgan misolda Reyting - haqiqiy turdagi vektor deb nomlanadi. 
Dasturda 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: 
[
Bu ko‘rinishga xususiy o‘zgaruvchi deyiladi, chunki uning qiymati massivning 
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, dasturdagi 
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. 
Haqiqiy turdagi (float, double) qiymatlar to‘plami cheksiz bo‘lganligi sababli ular 
indeks sifatida ishlatilmaydi. 
С++ tilida indeks doimo 0 dan boshlanadi va uning eng katta qiymati massiv 
e’lonidagi uzunlikdan bittaga kam bo‘ladi. Massiv e’loni quyidagicha bo‘ladi: 
[]={boshlang‘ich qiymatlar}. 
Bu yerda  - o‘zgarmas ifoda. Misollar: 

Download 478.01 Kb.
  1   2   3




Download 478.01 Kb.
Pdf ko'rish

Bosh sahifa
Aloqalar

    Bosh sahifa



15-mavzu: Massivlar Reja Massiv tushunchasi

Download 478.01 Kb.
Pdf ko'rish