Երկչափ զանգվածներ
Եթե միաչափ զանգվածները (array-ները) նման են վանդակավոր տետրի մի տողին, ապա երկչափ զանգվածները (2D array-ները) կարելի է ասել որ վանդակավոր տետրի մի էջն են։
2D array-ի Համարակալումը սկսում է (0, 0)-ից, որը ձախ վերևի անկյունն է, որին հետևում է (0, 1) վանդակը, որը առաջին տողի երկրորդ վանդակն է։ (0, 2)-ը առաջին տողի երրորդ վանդակն է և այդպես շարունակ։ (1, 0)-ն դա երկրորդ տողի առաջին վանդակն է, (1, 1)-ը՝ երկրորդը, (1, 2)-ը երրորդը և այդպես շարունակ։
Այսպիսով համարակալում ենք (row, column) կամ (տող, սյուն) հերթականությամբ։
Եթե
C++
ում ուզում ենք հայտարարել 2D զանգված, ապա դա կարող ենք անել այսպես՝#include <iostream>
using namespace std;
int main() {
int a[10][15];
cin >> a[0][0];
cin >> a[0][1];
cout << a[0][1] << endl;
return 0;
}
Այստեղ մենք հայտարարեցինք 10 տող և 15 սյուն ունեցող զանգված, որի տողերը համարակալված են
0, 1, 2, ... 9
թվերով, իսկ սյուները՝ 0, 1, 2, ..., 14
թվերով։ Դրանից հետո, մենք ներմուծեցինք առաջին տողի առաջին սյան էլեմենտը cin >> a[0][0];
-ի միջոցով։ Որից հետո ներմուծեցինք և տպեցինք առաջին տողի երկրորդ էլեմենտը՝ cin >> a[0][1];
և cout << a[0][1];
-ի միջոցով։ Այսինքն C++
ում երկչափ զանգվածի հետ աշխատելը շատ նման է միաչափ զանգվածի հետ աշխատանքին։ Միակ տարբերությունն այն է, որ հայտարարում ենք երկու քառակուսի փակագծերի մեջ (սկզբից նշելով տողերի քանակը հետո սյուներինը) և ամեն էլեմենտին դիմում սկզբից նշելով տողի համարը, իսկ հետո սյան համարը։Վարժություն՝
Մուտքում տրված է մի
n
թիվ (1 ≤ n ≤ 100)։ Անհրաժեշտ է ելքում տպել շախմատի տախտակ, որտեղ ամեն վանդակում գրված կլինի 1
եթե այդ վանդակը պետք է ներկված լինի սևով և 0
եթե այն պետք է ներկված լինի սպիտակով։Մուտք | Ելք |
3 | 0 1 0
1 0 1
0 1 0 |
Constraints
Time limit: 0.2 seconds
Memory limit: 512 MB
Output limit: 1 MB