Inleiding tot multidimensionale arrays in C ++
Multidimensionale arrays in C ++ arrays worden gebruikt om de gegevens op te slaan in de vorm van een tabel met rijen en kolommen. Hier kunnen we enkele of multidimensionale arrays maken om waarden in verschillende scenario's vast te houden. Eéndimensionaal heeft één dimensie, terwijl een multidimensionale array tweedimensionaal, 3-dimensionaal, enz. Kan zijn. We kunnen de multidimensionale array beschouwen als een array van arrays. Hier worden de gegevens in tabelvorm opgeslagen. In dit artikel zullen we zien wat een multidimensionale array is, het gebruik van een multidimensionale array, hoe u deze kunt openen en hoe u effectief multidimensionale array in onze code kunt gebruiken.
Een element van multidimensionale array in C ++
- Laten we het voorbeeld van een matrix beschouwen om de multidimensionale reeks te begrijpen. In een 2D-matrix zijn er rijen en kolommen. Om dit weer te geven, gebruiken we een 2D-dimensionale array.
- In multidimensionale arrays gegevens in de vorm van een tabel, dat is in rij-hoofdvolgorde. De algemene syntaxis van een tweedimensionale array is zoals hieronder.
data_type array_name(size1)(size2);
- Onthoud dat de grootte altijd een positieve gehele waarde is. Hieronder is het voorbeeld van een driedimensionale array.
int matrix(3)(5);
Hier is de matrix een tweedimensionale array met maximaal 15 elementen.
- Het maximale aantal elementen in een array wordt verkregen door de grootte van alle dimensies te vermenigvuldigen. In 3DArray (2) (3) (4) wordt het maximale element bijvoorbeeld verkregen door 2, 3, 4, dat wil zeggen 24, te vermenigvuldigen.
- Op dezelfde manier kan matrix (10) (10) (10) 1000 elementen bevatten. We kunnen dit visualiseren omdat elk van de 10 elementen 10 elementen kan bevatten, wat een totaal van 100 elementen oplevert. Elke 100 elementen kunnen nog eens 10 elementen bevatten, waardoor de uiteindelijke telling 1000 wordt.
- We kunnen een multidimensionale array maken door eerst een eenvoudigere array te maken en deze vervolgens uit te breiden naar de vereiste dimensie.
Initialisatie van een multidimensionale array
Laten we een 3D-array nemen. We kunnen een driedimensionale array op vele manieren initialiseren. Hieronder zijn de voorbeelden ter referentie.
int 3DArray(2)(2)(4) = (1, 3, 6, 5, 8, 9, -2, 4, 5, 10, 34, 56, 23, -56, 10, 37);
- De waarden in de bloemhaken van links naar rechts worden in de array opgeslagen als een tabel van links naar rechts. De waarden worden in de volgende volgorde in de array ingevuld. Eerste 4 elementen van links in de eerste rij, volgende 4 elementen in de tweede rij enzovoort.
- De bovenstaande initialisatie geeft ons geen duidelijk beeld van de array. Voor een betere visualisatie kunnen we dezelfde reeks initialiseren als hieronder.
int 3DArray(2)(2)(4) =
(
( (1, 3, 6, 5), (8, 9, -2, 4) ),
( (5, 10, 34, 56), (23, -56, 10, 37) )
);
Toegang krijgen tot elementen in de multidimensionale array is vergelijkbaar met elke andere array, door de index van het element te gebruiken. We moeten drie lussen gebruiken om toegang te krijgen tot alle elementen in de array. Hieronder ziet u een voorbeeld van toegang tot een element in een 3D-array.
x(2)(1)(0)
- Voor arrays met een hogere dimensie zoals 4, 5, 6, enz., Is het concept vrij gelijkaardig, maar de complexiteit van het omgaan met de dingen neemt toe. Bijvoorbeeld het aantal gebruikte lussen, het aantal elementzoekingen, toegang tot het specifieke element, etc.
- Elementen van driedimensionale of hoger-dimensionele arrays kunnen op verschillende manieren worden verplaatst. Deze bewerking is vergelijkbaar met vectoren en matrices. Verschillende technieken zoals hervormen, permute en squeeze worden gebruikt om elementen in de array te herschikken. Dit zijn de complexe technieken waar we ons nu geen zorgen over hoeven te maken.
Voorbeeld met stappen
Hier zijn enkele voorbeelden van multidimensionale arrays in C ++ die hieronder met stappen worden gegeven:
Voorbeeld 1
Nu zullen we deze 2D-arrays gebruiken om te begrijpen hoe de multidimensionale arrays zullen werken. We zullen een C ++ code schrijven die input van de gebruiker voor twee matrices zal nemen, ze toevoegen en het resultaat van de toevoeging van de matrices weergeven. Eerst zullen we het hoofdprogramma schrijven voor de uitvoering.
Binnen de hoofdfunctie zullen we twee tweedimensionale arrays declareren die maximaal 4 elementen kunnen opslaan.
Nu zullen we de gebruiker vragen om 4 waarden voor elke array in te voeren.
Om de waarden in de array op te slaan, hebben we twee lussen nodig, dat wil zeggen dat elke dimensie één lus gebruikt om te doorlopen. We nemen twee indexen, i en j voor de twee dimensies. Voor een beter begrip van de code zullen we for loop gebruiken. First for loop vertegenwoordigt de eerste dimensie, tweede for loop voor de tweede dimensie. Binnen de tweede for-lus nemen we de input van de gebruiker.
Neem nu op dezelfde manier invoer voor de tweede array.
Aangezien de waarden in elke array worden opgeslagen, is het tijd voor ons om de toevoeging van twee arrays aan de gebruiker te tonen. Hiervoor gebruiken we opnieuw de twee for loops voor traversal en deze keer cout voor het afdrukken van de waarden.
Output:
Voorbeeld 2
We declareren een reeks van een willekeurig aantal elementen en gebruiken ze om verschillende functies uit te voeren, zoals optellen, aftrekken, vermenigvuldigen, inverse, transformeren, enz. Voor aftrekken kan onderstaande code worden gebruikt:
Kies verschillende ingangen en controleer de uitgangen en tel ze wiskundig op.
Output:
Conclusie
In dit artikel hebben we geleerd wat een array is, wat een enkele en multidimensionale array is, de betekenis van multidimensionale array, hoe de array te initialiseren en de multidimensionale array in het programma te gebruiken op basis van onze behoeften.
Aanbevolen artikelen
Dit is een handleiding voor multidimensionale arrays in C ++. Hier bespreken we de syntaxis, elementen en initialisatie van een multidimensionale array in C ++ samen met voorbeelden en stappen. U kunt ook de volgende artikelen bekijken voor meer informatie-
- Multidimensionale array in C
- Introductie tot C ++
- Roest versus C ++
- Overbelasting en opheffen in C ++