Массивхои дученака
- Подробности
- Обновлено 10.01.2011 17:57
- Просмотров: 1077
Массивхое, ки мо то ин дам муоина намудем массивхои якченака номида мешаванд. Дар C++ ташкили массивхои бисёрченака низ имконпазир аст, ки ин чо массивхои дученакаро дида мебароем. Масалан, барои ифода намудани тахтаи шохмот массиви дученакаи 8 бар 8 лозим аст. Массивхои дученакаро чунин тасаввур кардан мумкин аст:
[ ] [ ] [ ] [ ] ... [ ]
[ ] [ ] [ ] [ ] ... [ ]
[ ] [ ] [ ] [ ] ... [ ]
[ ] [ ] [ ] [ ] ... [ ]
.................................
[ ] [ ] [ ] [ ] ... [ ]
Сохтори умумии эълони массиви дученака чунин аст:
type array_name[size1][size2];
Дар ин чо type - намуди элементхои массив, array_name - номи массив, хосили зарби size1 ба size2 - микдори умумии элементхои массив. Кайд кардан зарур аст, ки хар як элементи массиви дученака низ раками тартибии худро дорад ва он бо ду индекс муайян мешавад:
array_name[ i ][ j ],
ки дар ин чо i ва j - индексхои массив.
Мисол:
//namuna22.cpp
using namespace std;
#include <iostream>
int main() {
const int n=7, m=9;
int x, y, massiv2[n][m];
for(x=0; x<n; x++) {
for(y=0; y<m; y++) {
massiv2[x][y]=x;
}
}
for(x=0; x<n; x++) {
for(y=0; y<m; y++) {
cout<<massiv2[x][y]<<" ";
}
cout<<endl;
}
return 0;
}
ё ки:
//namuna22a.cpp
using namespace std;
#include <iostream>
int main() {
const int n=7, m=9;
int x, y, massiv2[n][m];
for(x=0; x<n; x++)
for(y=0; y<m; y++)
massiv2[x][y]=x;
for(x=0; x<n; x++) {
for(y=0; y<m; y++)
cout<<massiv2[x][y]<<" ";
cout<<endl;
}
return 0;
}
Мисоли дигар:
//namuna23.cpp
using namespace std;
#include <iostream>
#include <iomanip>
int main() {
const int n=9, m=9;
int x, y, z, massiv2[n][m];
for(x=0; x<n; x++)
for(y=0; y<m; y++) {
z=10*(x+1)+y+1;
massiv2[x][y]=z*z;
}
cout<<" ";
for(x=0; x<n; x++)
cout<<x+1<<" ";
cout<<endl;
cout<<"---";
for(x=0; x<n; x++)
cout<<"-----";
cout<<endl;
for(x=0; x<n; x++) {
cout<<x+1<<" | ";
for(y=0; y<m; y++)
cout<<setw(4)<<massiv2[x][y]<<" ";
cout<<endl;
}
return 0;
}
Дар ин барнома функсияи setw() истифода шудааст (set width - муайян кардани бар). Вазифаи ин функсия аз муайян кардани микдори мавкехое, ки адади минбаъда дар экран банд мекунад иборат аст. Бо оператори setw(4) мо фармон медихем, ки хар як элементи массив дар экран 4 мавкеъро ишгол кунад. Ин барои дар шакли зеботар ба экран баровардани чадвали квадратхо зарур аст. Шумо метавонед кисми кодро <<setw(4) тоза кунед ва фаркро бо чашми худ бинед. Хамрох кардани файли сарлавхавии <iomanip.h> низ аз хотир бояд набарояд. Бо функсияхои дигари ин файли сарлавхави мо дертар шинос мешавем.
САВОЛХО БАРОИ МУСТАХКАМКУНИ
1. Оид ба массивхои дученака мисол оред.
2. Матрисаи квадратии тартиби 4 чи хел эълон карда мешавад?
3. Элементи массиви дученака чанд индекс дорад?
4. Функсияи setw() барои чи лозим аст?