Többdimenziós tömbök C ++-ban - Szintaxis, elemek, példák lépésekkel

Tartalomjegyzék:

Anonim

Bevezetés a C ++ multidimenziós tömbjeibe

A C ++ tömbökben a többdimenziós tömbökkel az adatokat sorok és oszlopok táblázataként tárolhatják. Itt létrehozhatunk egy- vagy többdimenziós tömböket az értékek különböző forgatókönyvekben való tárolására. Az egydimenziósnak van egy dimenziója, míg a többdimenziós tömb lehet 2dimenziós, 3dimenziós stb. A multidimenziós tömböt tömbök tömbjeként gondolhatjuk. Itt az adatokat táblázatos formában tárolják. Ebben a cikkben meglátjuk, mi a többdimenziós tömb, a többdimenziós tömb használata, hogyan érhető el hozzájuk, és hogyan lehet hatékonyan használni a többdimenziós tömböt kódunkban.

A többdimenziós tömb eleme a C ++-ban

  • Nézzük meg például a mátrix példáját a többdimenziós tömb megértéséhez. A 2D mátrixban sorok és oszlopok lesznek. Annak érdekében, hogy ezt ábrázoljuk, egy 2D dimenziós tömböt használunk.
  • Többdimenziós tömbökben az adatok táblák formájában vannak, azaz sorok és nagyobbak sorrendjében. A 2-dimenziós tömb általános szintaxisa az alábbiakban látható.

data_type array_name(size1)(size2);

  • Ne feledje, hogy a méret mindig pozitív egész szám. Az alábbiakban egy példa egy háromdimenziós tömbre.

int matrix(3)(5);

Itt a mátrix egy kétdimenziós tömb, legfeljebb 15 elemmel.

  • A tömbben található elemek maximális számát az összes méret nagyságának szorzásával lehet elérni. Például a 3DArray (2) (3) (4) esetében a maximális elem a 2, 3, 4, azaz 24 szorzásával nyerhető.
  • Hasonlóképpen a (10) (10) (10) mátrix 1000 elemet képes tárolni. Ezt elképzelhetjük, mivel a 10 elem mindegyike 10 elemet képes tartani, ami összesen 100 elemből áll. Minden 100 elem további 10 elemet tarthat, ami a végső számot 1000-nek teszi.
  • Hozzunk létre egy többdimenziós tömböt, ha előbb létrehozunk egy egyszerűbb tömböt, majd kiterjesztjük a kívánt dimenzióra.

Egy többdimenziós tömb inicializálása

3D-s tömb felvétele. A háromdimenziós tömb sokféleképpen inicializálható. Az alábbiakban példákat mutatunk be referenciaként.

int 3DArray(2)(2)(4) = (1, 3, 6, 5, 8, 9, -2, 4, 5, 10, 34, 56, 23, -56, 10, 37);

  • A balról jobbra mutató virágtartók értékeit a tömb belsejében táblázatként tárolják balról jobbra. Az értékeket a tömb a következő sorrendben tölti ki. Az első sorban az első 4 elem balról, a második sorban a következő 4 elem és így tovább.
  • A fenti inicializálás nem ad világos képet a tömbről. A jobb megjelenítés érdekében ugyanazt a tömböt inicializálhatjuk, mint az alábbiakban.

int 3DArray(2)(2)(4) =
(
( (1, 3, 6, 5), (8, 9, -2, 4) ),
( (5, 10, 34, 56), (23, -56, 10, 37) )
);

Az elemek elérése a többdimenziós tömbben hasonló az összes többi tömbhöz, az elem indexének felhasználásával. Három hurkot kell használnunk a tömbben lévő összes elem eléréséhez. Az alábbiakban bemutatunk egy példát egy elemhez egy 3D tömbben.

x(2)(1)(0)

  • Nagyobb méretű tömbök, például 4, 5, 6 stb. Esetében a koncepció meglehetősen hasonló, de a dolgok kezelésének bonyolultsága növekszik. Például a felhasznált hurkok száma, az elemkeresések száma, az adott elem elérése stb.
  • A háromdimenziós vagy magasabb dimenziós tömbök elemei különböző módon mozgathatók. Ez a művelet hasonló a vektorokhoz és mátrixokhoz. Különböző technikákat, például átalakítást, permutálást és sajtolást használnak az elemek átrendezéséhez a tömb belsejében. Ezek azok a komplex technikák, amelyeket most nem kell aggódnunk.

Példa a lépésekkel

Íme néhány példa a C ++ többdimenziós tömbjeire, alább, lépésekkel:

1. példa

Most ezeket a 2D tömböket fogjuk használni annak megértéséhez, hogy a többdimenziós tömbök hogyan fognak működni. Írunk egy C ++ kódot, amely felhasználja a felhasználót a két mátrix számára, hozzáadja azokat és megjeleníti a mátrixok hozzáadásának eredményét. Először megírjuk a végrehajtás fő programját.

A fő funkción belül két 2 dimenziós tömböt deklarálunk, amelyek akár 4 elemet is tárolhatnak.

Most megkérjük a felhasználót, hogy adjon meg 4 értéket minden tömbhez.

Az értékek tömbbe történő tárolásához két hurokra van szükség, azaz minden dimenzió egy hurkot használ a mozgáshoz. Két indexet veszünk, i és j a két dimenzióhoz. A kód jobb megértése érdekében a ciklust fogjuk használni. Az első a hurok számára jelenti az első dimenziót, a második a hurok a második dimenzióhoz. A hurok másodpercén belül a felhasználó adatait vesszük.

Most vegye be a második tömb bevitelét hasonló módon.

Mivel az értékeket minden tömbben tárolják, itt az ideje, hogy megmutassuk a felhasználó számára két tömb hozzáadását. Ehhez ismét a kettőt használjuk a hurkokhoz az áthaladáshoz, és ezúttal az értékek kinyomtatásához.

Kimenet:

2. példa

Tetszőleges számú elem tömbjét deklaráljuk, és különféle funkciók végrehajtására használjuk, például összeadásra, kivonásra, szorzásra, inverzre, transzformációra stb. A kivonáshoz a kód használható:

Válasszon különböző bemeneteket, ellenőrizze a kimeneteket, és matematikailag illessze őket össze.

Kimenet:

Következtetés

Ebben a cikkben megtudtuk, mi az a tömb, mi az egy- és többdimenziós tömb, a multidimenziós tömb jelentőségét, hogyan lehet inicializálni a tömböt és a többdimenziós tömb felhasználását a programban igényeink alapján.

Ajánlott cikkek

Ez egy útmutató a C ++ multidimenziós tömbjeihez. Itt tárgyaljuk a szintaxist, az elemeket és a többdimenziós tömb inicializálását a C ++ formában, példákkal és lépésekkel együtt. A következő cikkeket is megnézheti további információkért -

  1. Többdimenziós tömb C-ben
  2. Bevezetés a C ++ -ba
  3. Rozsda vs C ++
  4. Túlterhelés és felülbírálás a C ++-ban