Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Uitdaging: Multidimensionale Arrays | Arrays
C# Basisprincipes

bookUitdaging: Multidimensionale Arrays

Het is soms handig om constanten te declareren voor het indexeren van multidimensionale arrays. Hieronder staat de array uit de quiz van het vorige hoofdstuk:

main.cs

main.cs

copy
1234567
const int FRUITS = 0; const int VEGETABLES = 1; string[,] foods = { { "Apple", "Apricot", "Banana", "Grapes", "Lime" }, // fruits { "Tomato", "Cabbage", "Carrot", "Pumpkin", "Broccoli" }, // vegetables };

We hebben twee constanten aangemaakt, FRUITS en VEGETABLES, met de waarden 0 en 1, die respectievelijk de rijen 0 voor fruit en 1 voor groenten in de foods array voorstellen.

Dus als we het element "Cabbage" uit de groenten willen benaderen, kunnen we eenvoudig schrijven:

main.cs

main.cs

copy
1
foods[VEGETABLES][1];

Deze truc is misschien niet erg nuttig bij kleinere arrays zoals deze, maar bij het werken met meer complexe arrays kunnen constanten als deze helpen om eenvoudig items uit de array te halen, zodat we niet hoeven te onthouden welke rij welke items bevat – vooral als we items per rij gecategoriseerd hebben.

De opdracht is nu om een 2D-array van het type string te maken met de naam productOptions, met een 4x3 vorm (4 rijen, 3 kolommen). Initialiseer deze met de volgende gegevens:

  • Rij 1: "Red", "Green", "White";
  • Rij 2: "Square", "Rectangle", "Sphere";
  • Rij 3: "Thick", "Medium", "Thin";
  • Rij 4: "Printed", "Crafted", "None".

Benader het element "Crafted" via indexering en geef het weer. Gebruik hiervoor de relevante constante variabele.

main.cs

main.cs

copy
123456789101112131415161718192021222324
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { const int COLOR = 0; const int SHAPE = 1; const int WIDTH = 2; const int DESIGN = 3; // Create the array below _______ = { _______ }; // Reference the relevant element in the WriteLine statement Console.WriteLine(productOptions[DESIGN, 1]); Console.WriteLine(productOptions[COLOR, 2]); Console.WriteLine(productOptions[SHAPE, 0]); Console.WriteLine(productOptions[WIDTH, 1]); } } }
  1. Voor het declareren van een multidimensionale array voegen we komma's toe binnen de vierkante haken ([]), afhankelijk van het aantal dimensies van de array. Bijvoorbeeld, een 3D integer-array wordt gedeclareerd als int[,,] arrayName = { ... };.
  2. Het is toegestaan om variabele of constante waarden te gebruiken bij het indexeren. Bijvoorbeeld, als we een array hebben int[] exampleArray = { 1, 2, 3, 4, 5 }; en een constante const int someIndex = 2, is het geldig om exampleArray[someIndex] te schrijven om het element 3 uit de array te benaderen.
main.cs

main.cs

copy
123456789101112131415161718192021222324252627
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { const int COLOR = 0; const int SHAPE = 1; const int WIDTH = 2; const int DESIGN = 3; // Create the array below string[,] productOptions = { { "Red", "Green", "White" }, { "Square", "Rectangle", "Sphere" }, { "Thick", "Medium", "Thin" }, { "Printed", "Crafted", "None" } }; // Reference the relevant element in the WriteLine statement Console.WriteLine(productOptions[DESIGN, 1]); Console.WriteLine(productOptions[COLOR, 2]); Console.WriteLine(productOptions[SHAPE, 0]); Console.WriteLine(productOptions[WIDTH, 1]); } } }

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 5. Hoofdstuk 6

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Awesome!

Completion rate improved to 1.59

bookUitdaging: Multidimensionale Arrays

Veeg om het menu te tonen

Het is soms handig om constanten te declareren voor het indexeren van multidimensionale arrays. Hieronder staat de array uit de quiz van het vorige hoofdstuk:

main.cs

main.cs

copy
1234567
const int FRUITS = 0; const int VEGETABLES = 1; string[,] foods = { { "Apple", "Apricot", "Banana", "Grapes", "Lime" }, // fruits { "Tomato", "Cabbage", "Carrot", "Pumpkin", "Broccoli" }, // vegetables };

We hebben twee constanten aangemaakt, FRUITS en VEGETABLES, met de waarden 0 en 1, die respectievelijk de rijen 0 voor fruit en 1 voor groenten in de foods array voorstellen.

Dus als we het element "Cabbage" uit de groenten willen benaderen, kunnen we eenvoudig schrijven:

main.cs

main.cs

copy
1
foods[VEGETABLES][1];

Deze truc is misschien niet erg nuttig bij kleinere arrays zoals deze, maar bij het werken met meer complexe arrays kunnen constanten als deze helpen om eenvoudig items uit de array te halen, zodat we niet hoeven te onthouden welke rij welke items bevat – vooral als we items per rij gecategoriseerd hebben.

De opdracht is nu om een 2D-array van het type string te maken met de naam productOptions, met een 4x3 vorm (4 rijen, 3 kolommen). Initialiseer deze met de volgende gegevens:

  • Rij 1: "Red", "Green", "White";
  • Rij 2: "Square", "Rectangle", "Sphere";
  • Rij 3: "Thick", "Medium", "Thin";
  • Rij 4: "Printed", "Crafted", "None".

Benader het element "Crafted" via indexering en geef het weer. Gebruik hiervoor de relevante constante variabele.

main.cs

main.cs

copy
123456789101112131415161718192021222324
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { const int COLOR = 0; const int SHAPE = 1; const int WIDTH = 2; const int DESIGN = 3; // Create the array below _______ = { _______ }; // Reference the relevant element in the WriteLine statement Console.WriteLine(productOptions[DESIGN, 1]); Console.WriteLine(productOptions[COLOR, 2]); Console.WriteLine(productOptions[SHAPE, 0]); Console.WriteLine(productOptions[WIDTH, 1]); } } }
  1. Voor het declareren van een multidimensionale array voegen we komma's toe binnen de vierkante haken ([]), afhankelijk van het aantal dimensies van de array. Bijvoorbeeld, een 3D integer-array wordt gedeclareerd als int[,,] arrayName = { ... };.
  2. Het is toegestaan om variabele of constante waarden te gebruiken bij het indexeren. Bijvoorbeeld, als we een array hebben int[] exampleArray = { 1, 2, 3, 4, 5 }; en een constante const int someIndex = 2, is het geldig om exampleArray[someIndex] te schrijven om het element 3 uit de array te benaderen.
main.cs

main.cs

copy
123456789101112131415161718192021222324252627
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { const int COLOR = 0; const int SHAPE = 1; const int WIDTH = 2; const int DESIGN = 3; // Create the array below string[,] productOptions = { { "Red", "Green", "White" }, { "Square", "Rectangle", "Sphere" }, { "Thick", "Medium", "Thin" }, { "Printed", "Crafted", "None" } }; // Reference the relevant element in the WriteLine statement Console.WriteLine(productOptions[DESIGN, 1]); Console.WriteLine(productOptions[COLOR, 2]); Console.WriteLine(productOptions[SHAPE, 0]); Console.WriteLine(productOptions[WIDTH, 1]); } } }

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 5. Hoofdstuk 6
some-alt