Úvod do vícerozměrných polí v C ++
Vícerozměrná pole v polích C ++ se používají k ukládání dat ve formě tabulky řádků a sloupců. Zde můžeme vytvořit jedno- nebo vícerozměrná pole pro uchovávání hodnot v různých scénářích. Jednorozměrný má jednu dimenzi, zatímco vícerozměrné pole může být dvourozměrné, trojrozměrné atd. Vícerozměrné pole můžeme považovat za pole matic. Zde jsou data uložena ve formě tabulky. V tomto článku se podíváme na to, co je vícerozměrné pole, použití vícerozměrného pole, jak k nim získat přístup a jak efektivně využívat vícerozměrné pole v našem kódu.
Prvek vícerozměrného pole v C ++
- Podívejme se na příklad matice k pochopení vícerozměrného pole. V 2D matici budou řádky a sloupce. Abychom to mohli reprezentovat, používáme 2D rozměrové pole.
- Ve vícerozměrných polích data ve formě tabulky, která je v řádkovém pořadí. Obecná syntaxe dvourozměrného pole je uvedena níže.
data_type array_name(size1)(size2);
- Pamatujte, že velikost je vždy kladné celé číslo. Níže je uveden příklad trojrozměrného pole.
int matrix(3)(5);
Matice je zde dvourozměrné pole, které má maximálně 15 prvků.
- Maximální počet prvků obsažených v poli se získá vynásobením velikosti všech rozměrů. Například v 3DArray (2) (3) (4) se maximální prvek získá vynásobením 2, 3, 4, tj. 24.
- Podobně matice (10) (10) (10) může pojmout 1000 prvků. Můžeme si to představit, protože každý z 10 prvků pojme 10 prvků, což dohromady tvoří 100 prvků. Každých 100 prvků může obsahovat dalších 10 prvků, což činí konečný počet 1000.
- Můžeme vytvořit vícerozměrné pole nejprve vytvořením jednoduššího pole a jeho rozšířením na požadovanou dimenzi.
Inicializace vícerozměrného pole
Umožňuje nám vzít 3D pole. Můžeme inicializovat trojrozměrné pole mnoha způsoby. Níže jsou uvedeny příklady referencí.
int 3DArray(2)(2)(4) = (1, 3, 6, 5, 8, 9, -2, 4, 5, 10, 34, 56, 23, -56, 10, 37);
- Hodnoty ve složených závorkách zleva doprava jsou uloženy uvnitř pole jako tabulka zleva doprava. Hodnoty budou vyplněny do pole v následujícím pořadí. První 4 prvky zleva v první řadě, další 4 prvky ve druhé řadě atd.
- Výše uvedená inicializace nám nedá jasný obrázek o poli. Pro lepší vizualizaci můžeme inicializovat stejné pole jako níže.
int 3DArray(2)(2)(4) =
(
( (1, 3, 6, 5), (8, 9, -2, 4) ),
( (5, 10, 34, 56), (23, -56, 10, 37) )
);
Přístup k prvkům ve vícerozměrném poli je podobný jako u jakéhokoli jiného pole pomocí indexu prvku. K přístupu ke všem prvkům uvnitř pole musíme použít tři smyčky. Níže je uveden příklad přístupu k prvku ve 3D poli.
x(2)(1)(0)
- Pro pole vyšší dimenze, jako jsou 4, 5, 6 atd., Je koncept docela podobný, ale složitost manipulace s věcmi se zvyšuje. Například počet použitých smyček, počet vyhledávání prvků, přístup k určitému prvku atd.
- Prvky trojrozměrných nebo vyšších rozměrů polí lze pohybovat různými způsoby. Tato operace je podobná vektorům a maticím. Pro účely přeskupení prvků uvnitř pole se používají různé techniky, jako je změna tvaru, permutace a stlačení. Toto jsou složité techniky, které si zatím nemusíme dělat starosti.
Příklad s kroky
Zde je několik příkladů vícerozměrných polí v C ++ uvedených níže s kroky:
Příklad č. 1
Nyní použijeme tato 2D pole k pochopení toho, jak budou vícerozměrná pole fungovat. Napíšeme kód C ++, který vezme vstup od uživatele pro dvě matice, přidá je a zobrazí výsledek přidání matic. Nejprve napíšeme hlavní program pro provedení.
Uvnitř hlavní funkce deklarujeme dvourozměrná pole, která pojmou až 4 prvky.
Nyní požádáme uživatele o zadání 4 hodnot pro každé pole.
K uložení hodnot do pole potřebujeme dvě smyčky, tj. Každá kóta používá k procházení jednu smyčku. Vezmeme dva indexy, i a j pro tyto dvě dimenze. Pro lepší pochopení kódu použijeme smyčku. První pro smyčku představuje první dimenzi, druhá pro smyčku pro druhou dimenzi. Uvnitř druhé smyčky bereme vstup od uživatele.
Nyní vezměte vstup pro druhé pole podobným způsobem.
Nyní, když jsou hodnoty uloženy v každém poli, je na čase, abychom uživateli ukázali přidání dvou polí. K tomu opět použijeme dva pro smyčky pro průchod a tentokrát pro tisk hodnot.
Výstup:
Příklad č. 2
Deklarujeme pole libovolného počtu prvků a používáme je k provádění různých funkcí, jako je sčítání, odčítání, násobení, inverzní, transformace atd. Pro odčítání lze použít níže uvedený kód:
Vyberte různé vstupy a zkontrolujte výstupy a matematicky je vyhodnoťte.
Výstup:
Závěr
V tomto článku jsme se dozvěděli, co je to pole, co je jedno a vícerozměrné pole, význam vícerozměrného pole, jak inicializovat pole a používat vícerozměrné pole v programu na základě našich potřeb.
Doporučené články
Toto je průvodce multidimenzionálními poli v C ++. Zde diskutujeme syntaxi, prvky a inicializaci vícerozměrného pole v C ++ spolu s příklady a kroky. Další informace naleznete také v následujících článcích
- Vícerozměrné pole v C
- Úvod do C ++
- Rust vs C ++
- Přetížení a přemostění v C ++