Massiv – bu bir toifali , chekli qiymatlarning tartiblangan to`plamidir . Massivlarga misol qilib matematika kursidan ma`lum bo`lgan vektorlar , matritsalarni ko`rsatish mumkin .
Massivlar odatda bir o`lchovli va ko`p o`lchovli turlarga bo`linadi.
Massiv bir o`lchamli deyiladi, agar uning elementiga bir indeks orqali murojat qilish mumkin bo`lsa.
C\C++ dasturlash tillaridagi massiv elementlar indekislari har doim noldan boshlanadi (birdan emas) . Bizga char tipidagi m nomli massiv berilgan bo`lsin . Va u 3 ta elementdan tashkil topgan bo`lsin.
m[0] à -9 ;
m[1] à 15;
m[2] à 3;
Demak, elementga murojat qilish uchun massiv nomi va [] qavslar ichida element indeksi yoziladi.
Bu yerda birinchi element qiymati -9 , ikkinchi element – 1 nomerli indeksda -15 qiymati bor ekan. Oxirgi element indeksi n-1 bo`ladi (n-massiv elementlari soni). [] qavs ichidagi indeks butun son yoki butun songa olib keluvchi ifoda bo`lmog`i lozim. Masalan:
int n=6, m=4;
L[n-m]=33; // L[2]=33;
Cout<<m[2]; // ekranda : 3;
Massiv elementlariga murojaat qilish oddiy o`zgaruvchilarga murojat qilishdan biroz farq qiladi . Massiv elementiga murojat qilish indeksi orqali bo`ladi.
a[1] = 5; a massivning indeksi 1 bo`lgan elementi 5 qiymat o`zlashtirilsin.
cin>>a[2]; a massivning elementi 2 bo`lgan elementi kiritilsin;
cout<<a[3]; a massivning indeksi 3 bo`lgan elementi ekranga chiqarilsin;
Bir o`lchamli massivlarni e`lon quyidagicha bo`ladi :
[elementlar _soni] = { boshlang`ich qiymatlar };
1)float a[5], 2) int b[6], 3) boll c[7];
1) a elementi haqiqiy sondan iborat bo`lgan , 4 ta elementdan
tashkil topgan massiv. Indekslari esa 0 dan 3 gacha bo`lgan sonlar.
|
Float a[5] |
|||||
|
Massiv elementlari |
a [0] |
a [1] |
a [2] |
a [3] |
a [4] |
|
qiymati |
4 |
11 |
-8 |
12 |
122 |
2) b elementi butun sondan iborat bo`lgan , 6 ta elementdan tashkil topgan massiv. Indekslari esa 0 dan 5 gacha bo`lgan sonlar.
|
int a[6] |
||||||
|
Massiv elementlari |
a [0] |
a [1] |
a [2] |
a [3] |
a [4] |
a [5] |
|
qiymati |
2 |
99 |
-5 |
28 |
112 |
54 |
3) c elementlari mantiqiy qiymatlardan ( true, false ) iborat bo`lgan 7 ta elementdan tashkil topgan massiv. Indekslari esa 0 dan 6 gacha bo`lgan sonlardir.
Massivni e`lon qilishda uning elementlariga boshlang`ich qiymat berish mumkin va buning bir necha usuli mavjud.
int k[5] = {2, 15 , -9, 45, 3 , 7};
Bu yerda 5 ta elementdan iborat k massivi e`lon qilingan va massivning barcha elementlariga boshlang`ich qiymat berilgan.
int k[5] = {2, 15, -9 };
Bu yerda 5 ta elementdan iborat bo`lgan k massivi e`lon qilingan va dastlabki 3 ta elementlariga boshlang`ich qiymat berilgan.
int k[] = {2, 15 , -9, 45, 3 , 7};
Shuni takidlash lozimki , agar massiv o`lchami ko`rsatilmasa , uni to`liq initsializatsiyalash shart. Bu xolda massiv o`lchami kompilyatsiya jarayonida massiv elementlar soniga qarab aniqlanadi. Bu yerda massiv o`lchami 5 ga teng.
int k[5] = {0};
Masalan:
1-misol. O`lchami ko`rsatilgan massivning barcha elementlariga boshlang`ich qiymat 0 berish.
#include
int main ()
{
int k[5]={0}; // massivning barcha elementlariga 0 qiymat berish.
for (int i=0; i<5; i++ )
cout<<"k["<<i<<"]="<<k[i]<<endl;
return 0;
}
Ekranga quyidagicha natija chiqadi:

2-misol. O`lchami ko`rsatilgan massivni to`liq initsializatsiyalash.
#include
int main ()
{
int k[5] = { 2, -9, 112, 3, 8 };
for (int i=4; i>=0; i-- ) // indekslarini teskari tartibda chop etish.
cout<<"k["<<i<<"]="<<k[i]<<endl;
return 0; }
Ekranga quyidagicha natija chiqadi:

3-misol. n o`lchamli butun sonlardan iborat massiv berilgan . Bu massivning toq elementlarini indekslarini o`sib borish tartibida chop etish va toq elementlar sonini hisoblash dasturi tuzilsin.
#include
int main ()
{
int k[100];
int i,n,s;
cout<<" sonini kiriting=";
cin>>n;
for ( i=1; i<=n; i++)
cin>>k[i];
s=0;
for (i=1; i<=n; i+=2)
{
cout<<"k["<<i<<"]="<<k[i]<<endl;
s++;
}
cout<<"soni"<<" "<<"->"<<" "<<s<<" "<<"ta"<<endl;
system("pause");
return 0;
}
Ekranga quyidagicha natija chiqadi:

2 izoh