Aller au contenu principal

Tableau à 2D

Déclaration AVEC initialisation

La déclaration d'un tableau à 2 dimensions est codée en ajoutant des parenthèses [ , ] à droite du type de données.

Pour l'initialiser, les valeurs sont codées entre des paires d'accolades.

Syntaxe :

type de données [ , ]  nomTableau =  {
{ valeur11, valeur12, valeur13, ...} // rangée 1
{ valeur21, valeur22, valeur23, ...} // rangée 2
...
}
  • Propriétés
    • Length : le nombre d'éléments
    • Rank : le nombre de dimensions
  • Méthodes
    • GetLength(0) : le nombre de rangées
    • GetLength(1) : le nombre de colonnes
Exemple #1 : déclaration d'un tableau 2D avec initialisationRésultats
// 4 étudiants et 8 Tps chacun ( 4 rangées X 8 colonnes )
int [ , ] tabNotes = {
{ 75, 80, 56, 89, 71, 78, 56, 90 },
{ 98, 84, 85, 78, 90, 78, 86, 100 },
{ 65, 88, 76, 56, 89, 85, 66, 63 },
{ 87, 55, 99, 45, 82, 80, 79, 100 }
};
Console.WriteLine(tabNotes.Length);
Console.WriteLine(tabNotes.GetLength(0));
Console.WriteLine(tabNotes.GetLength(1));
Console.WriteLine(tabNotes.Rank);

Console.WriteLine(tabNotes[ 0, 4 ]);
Console.WriteLine(tabNotes[ 2, 7 ]);




32
4
8
2

71
63

Déclaration SANS initialisation

Syntaxe :
type de données [ , ] nomTableau = new decimal [ nb rangées, nb colonnes];

Si le tableau n'est pas initialisé, la variable du tableau contient null.

  • l'opérateur new instancie (crée) l'objet tableau
  • le type de données des valeurs qui seront assignées au tableau est défini
  • la taille du tableau est définie par le nombre de rangées suivi du nombre de colonnes.

Chacun des éléments contient la valeur par défaut du type de données du tableau :

  • 0 pour les entiers, 0.0 pour les réels,
  • '\0' pour un caractère vide et null pour une chaine vide.
Exemple #2 : Déclaration et instanciation d'un tableau 2D sans initialisation
remplissage du tableau
calcul de la moyenne des éléments du tableau
Résultats
decimal[ , ] tabVentes = new decimal [4, 6]; //4 rangées et 6 colonnes

//---- Remplir le tableau des ventes --------------------------------
for (int rangee= 0; rangee < tabVentes.GetLength(0); rangee ++)
{
for (int colonne = 0; colonne < tabVentes.GetLength(1); colonne++)
{
tabVentes[rangee, colonne] = (colonne + 1) * (rangee + 1 ) * 10;
Console.Write(tabVentes[rangee, colonne] + ":");
}
Console.WriteLine();
}
//--- Calculer la moyenne des ventes -------------------------------
decimal accVentes = 0;
foreach (decimal uneVente in tabVentes)
{
accVentes += uneVente;
}
decimal moyenne = accVentes / tabVentes.Length;
Console.WriteLine("moyenne = " + moyenne);





10:20:30:40:50:60:
20:40:60:80💯120:
30:60:90:120:150:180:
40:80:120:160:200:240






moyenne = 87,5