Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Tableaux Multidimensionnels | Tableaux
Bases de C#
course content

Contenu du cours

Bases de C#

Bases de C#

1. Commencer
2. Traiter Avec les Types de Données
3. Structures de Contrôle
4. Boucles
5. Tableaux
6. Méthodes

book
Tableaux Multidimensionnels

Les tableaux peuvent également contenir d'autres tableaux en leur sein. Ces tableaux sont appelés tableaux multidimensionnels. Ils sont utiles lorsque l'on souhaite stocker des données sous forme tabulaire, avec des lignes et des colonnes, ou sous forme de matrice.

On peut déclarer un tableau à deux dimensions en utilisant la syntaxe suivante :

main.cs

main.cs

copy
1
datatype[][] arrayName = new datatype[lengthX, lengthY];

Le tableau créé avec la syntaxe ci-dessus aura une longueur (taille) égale à lengthX et chaque élément sera un tableau de taille lengthY :

main.cs

main.cs

copy
1
int[,] numbers = new int[3,3];

Dans l'exemple ci-dessus, nous créons une nouvelle matrice bidimensionnelle de taille 3x3. Cela signifie qu'elle peut contenir 9 nombres entiers. Nous pouvons initialiser un tableau 2D en utilisant la syntaxe suivante :

main.cs

main.cs

copy
12345
datatype [,] arrayName = { { element1, element2, ... }, { element1, element2, ...}, ... };

Considérez l'exemple avec des valeurs réelles :

main.cs

main.cs

copy
12345678910111213141516171819202122
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[,] numbers = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } }; // Displaying the array foreach (int number in numbers) { Console.Write(number + " "); } } } }

L'exemple ci-dessus est une matrice 3x4 pouvant stocker 12 éléments. L'illustration suivante montre une matrice 3x3 sous forme visuelle :

L'indexation dans les tableaux multidimensionnels est similaire à celle des tableaux classiques. Il suffit d'indiquer l'indice de la ligne et de la colonne.

main.cs

main.cs

copy
1
arrayName[row, column];

Par exemple, si nous voulons accéder à 6 dans le tableau numbers (illustré ci-dessus), nous accéderons à la 2ème ligne et à la 3ème colonne :

main.cs

main.cs

copy
123456789101112131415161718
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[,] numbers = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } }; Console.WriteLine(numbers[1, 2]); // Output: 7 } } }

Les tableaux de dimensions supérieures sont également possibles en ajoutant des virgules supplémentaires à la syntaxe de déclaration :

main.cs

main.cs

copy
123
int[,,] myArray3D = new int[3, 4, 5]; int[,,,] myArray4D = new int[5, 4, 9, 10]; // Similarly more complex ones are possible as well using the same pattern

Dans le code ci-dessus, myArray3D comportera 60 éléments (3x4x5), tandis que myArray4D en aura 1800 (5x4x9x10).

Voici comment initialiser un tableau à trois dimensions :

main.cs

main.cs

copy
123456
int[,,] numbers = { { {1, 2, 3}, { 4, 5, 6 }, {7, 8, 9} }, { {10, 11, 12}, {13, 14, 15}, {16, 17, 18} }, { {19, 20, 21}, {22, 23, 24}, {25, 26, 27} } };
question mark

Quel est le code correct pour accéder à l'élément "Pumpkin" dans le tableau foods :

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 5. Chapitre 5

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

course content

Contenu du cours

Bases de C#

Bases de C#

1. Commencer
2. Traiter Avec les Types de Données
3. Structures de Contrôle
4. Boucles
5. Tableaux
6. Méthodes

book
Tableaux Multidimensionnels

Les tableaux peuvent également contenir d'autres tableaux en leur sein. Ces tableaux sont appelés tableaux multidimensionnels. Ils sont utiles lorsque l'on souhaite stocker des données sous forme tabulaire, avec des lignes et des colonnes, ou sous forme de matrice.

On peut déclarer un tableau à deux dimensions en utilisant la syntaxe suivante :

main.cs

main.cs

copy
1
datatype[][] arrayName = new datatype[lengthX, lengthY];

Le tableau créé avec la syntaxe ci-dessus aura une longueur (taille) égale à lengthX et chaque élément sera un tableau de taille lengthY :

main.cs

main.cs

copy
1
int[,] numbers = new int[3,3];

Dans l'exemple ci-dessus, nous créons une nouvelle matrice bidimensionnelle de taille 3x3. Cela signifie qu'elle peut contenir 9 nombres entiers. Nous pouvons initialiser un tableau 2D en utilisant la syntaxe suivante :

main.cs

main.cs

copy
12345
datatype [,] arrayName = { { element1, element2, ... }, { element1, element2, ...}, ... };

Considérez l'exemple avec des valeurs réelles :

main.cs

main.cs

copy
12345678910111213141516171819202122
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[,] numbers = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } }; // Displaying the array foreach (int number in numbers) { Console.Write(number + " "); } } } }

L'exemple ci-dessus est une matrice 3x4 pouvant stocker 12 éléments. L'illustration suivante montre une matrice 3x3 sous forme visuelle :

L'indexation dans les tableaux multidimensionnels est similaire à celle des tableaux classiques. Il suffit d'indiquer l'indice de la ligne et de la colonne.

main.cs

main.cs

copy
1
arrayName[row, column];

Par exemple, si nous voulons accéder à 6 dans le tableau numbers (illustré ci-dessus), nous accéderons à la 2ème ligne et à la 3ème colonne :

main.cs

main.cs

copy
123456789101112131415161718
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[,] numbers = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } }; Console.WriteLine(numbers[1, 2]); // Output: 7 } } }

Les tableaux de dimensions supérieures sont également possibles en ajoutant des virgules supplémentaires à la syntaxe de déclaration :

main.cs

main.cs

copy
123
int[,,] myArray3D = new int[3, 4, 5]; int[,,,] myArray4D = new int[5, 4, 9, 10]; // Similarly more complex ones are possible as well using the same pattern

Dans le code ci-dessus, myArray3D comportera 60 éléments (3x4x5), tandis que myArray4D en aura 1800 (5x4x9x10).

Voici comment initialiser un tableau à trois dimensions :

main.cs

main.cs

copy
123456
int[,,] numbers = { { {1, 2, 3}, { 4, 5, 6 }, {7, 8, 9} }, { {10, 11, 12}, {13, 14, 15}, {16, 17, 18} }, { {19, 20, 21}, {22, 23, 24}, {25, 26, 27} } };
question mark

Quel est le code correct pour accéder à l'élément "Pumpkin" dans le tableau foods :

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 5. Chapitre 5
some-alt