.coin {
background-color:#E4EFFF;
border:1px solid #9FC6FF;
padding:5px;
/*arrondir les coins en haut à gauche et en bas à droite*/
-moz-border-radius:10px;
-webkit-border-radius:10px;
border-radius:10px;
font-family: ‘Trebuchet MS’, Verdana, sans-serif;
}
c#:Tableaux et matrices
//
Parcours des tableaux
Parcours des tableaux
Pour lire ou écrire les valeurs d’un tableau vous pouvez utiliser une boucle du type « for », « while » ou « do…while ».
En C#, il existe aussi « foreach » qui permet de parcourir une liste d’éléments dont les tableaux.
Cette structure est intéressante car elle permet de simplifier le code. Voici un exemple :
Un tableau est une structure de données qui contient un certain nombre de variables auxquelles le programme accède par des indices calculés.
Un tableau possède un rang qui détermine le nombre d’indices associés à chaque élément du tableau.
Le rang d’un tableau correspond aux dimensions du tableau.
Un tableau ayant le rang un est qualifié de tableau unidimensionnel.
Un tableau ayant un rang supérieur à un est qualifié de tableau multidimensionnel.
Chaque dimension d’un tableau se caractérise par une longueur, qui est un nombre entier supérieur ou égal à zéro.
La longueur d’une dimension détermine la plage valide d’indices de cette dimension : pour une dimension de longueur N, les indices peuvent aller de 0 à N – 1 inclus.
Un élément dans un tableau est accessible en indexant le nom du tableau . Ceci se fait en plaçant l’ index de l’élément entre crochets après le nom du tableau de la manière suivante:
double salaire = solde [ 9 ] ;
Exemple: Utilisation de boucle for
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace apcpedagogie_tableau_parcourir
{
class mon_tableau
{
static void Main(string[] args)
{
int[] tab = new int[10]; /* tab est un tableau de 10 entiers */
int i, j;
/* initialiser les éléments du tableau tab */
for (i = 0; i < 10; i++)
{
tab[i] = i + 100;
}
/* Affichage de valeur de chaque élément de tableau */
for (j = 0; j < 10; j++)
{
Console.WriteLine("Element[{0}] = {1}", j, tab[j]);
}
Console.ReadKey();
}
}
}
Dans l’exemple précédent , nous avons utilisé une boucle for pour accéder à chaque élément du tableau. Nous pouvons également utiliser une instruction foreach pour afficher chaque élément du tableau.
Exemple: Utilisation de boucle for
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace apcpedagogie_tableau_parcourir
{
class mon_tableau
{
static void Main(string[] args)
{
int[] tab = new int[10]; /* tab est un tableau de 10 entiers */
int i, j;
/* initialiser les éléments du tableau tab */
for (i = 0; i < 10; i++)
{
tab[i] = i + 100;
}
/* Affichage de valeur de chaque élément de tableau */
foreach (int m in tab)
{
int n = m - 100;
Console.WriteLine("Element[{0}] = {1}", n, m);
}
Console.ReadKey();
}
}
}
Obtenir la taille d’un tableau
Obtenir la taille d’un tableau
Il suffit d’utiliser la propriété Length du tableau pour connaître le nombre d’éléments qu’il peut contenir.
Dans le cas d’un tableau multidimensionnel, le résultat correspond au nombre total de cases du tableau soit le produit de la taille de chacune des dimensions.
Donc il ne s’agit pas de l’espace mémoire occupé par le tableau mais bien du nombre total de cases du tableau.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace apcpedagogie_tableau_parcourir
{
class mon_tableau
{
static void Main(string[] args)
{
int [,] table= { { "pain", "pain2" }, { "beure", "beure2" }, { "moutarde", "moutarde2" }, { "confiture", "confiture2" } };
Console.WriteLine("La dimension de ce tableau est :{0}", table.Length);
Console.ReadKey();
}
}
}
Résultat:
L’exécution de ce code affiche:La dimension de ce tableau est : 8 (2*4)
Pour obtenir l’occupation mémoire du tableau, il faut multiplier sa taille par le nombre d’octets utilisés pour une case élémentaire du tableau.
Obtenir la dimension d’un tableau
Obtenir la dimension d’un tableau
La propriété Rank d’un tableau renvoie la dimension d’un tableau.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace apcpedagogie_tableau_parcourir
{
class mon_tableau
{
static void Main(string[] args)
{
string [,] table= { { "pain", "pain2" }, { "beure", "beure2" }, { "moutarde", "moutarde2" }, { "confiture", "confiture2" } };
Console.WriteLine("La dimension de ce tableau est :{0}", table.Rank);
Console.ReadKey();
}
}
}
Résultat:
L’exécution de ce code affiche:La dimension de ce tableau est : 2
Rechercher un élément dans un tableau
La fonction IncdexOf de la classe Array permet d’effectuer une recherche dans un tableau.
Elle accepte comme paramètres, le tableau dans lequel se fait la recherche et l’élément recherché dans le tableau.
La valeur retournée correspond à l’index où l’élément a été trouvé dans le tableau ou -1 si élément ne se trouve pas dans le tableau.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace apcpedagogie_tableau_parcourir
{
class mon_tableau
{
static void Main(string[] args)
{
string[] goutter= { "pain", "beure", "moutarde", "confiture" };
Console.WriteLine(Array.IndexOf(goutter, "moutarde"));
Console.ReadKey();
}
}
}
Outils spécifiques pour la manipulation des tableaux
Length indique le nombre d’éléments
foreach est une boucle spécifique pour les tableaux (collections)
Pour offrir les meilleures expériences, nous utilisons des technologies telles que les cookies pour stocker et/ou accéder aux informations des appareils. Le fait de consentir à ces technologies nous permettra de traiter des données telles que le comportement de navigation ou les ID uniques sur ce site. Le fait de ne pas consentir ou de retirer son consentement peut avoir un effet négatif sur certaines caractéristiques et fonctions.
Fonctionnel
Toujours activé
Le stockage ou l’accès technique est strictement nécessaire dans la finalité d’intérêt légitime de permettre l’utilisation d’un service spécifique explicitement demandé par l’abonné ou l’utilisateur, ou dans le seul but d’effectuer la transmission d’une communication sur un réseau de communications électroniques.
Préférences
Le stockage ou l’accès technique est nécessaire dans la finalité d’intérêt légitime de stocker des préférences qui ne sont pas demandées par l’abonné ou l’utilisateur.
Statistiques
Le stockage ou l’accès technique qui est utilisé exclusivement à des fins statistiques.Le stockage ou l’accès technique qui est utilisé exclusivement dans des finalités statistiques anonymes. En l’absence d’une assignation à comparaître, d’une conformité volontaire de la part de votre fournisseur d’accès à internet ou d’enregistrements supplémentaires provenant d’une tierce partie, les informations stockées ou extraites à cette seule fin ne peuvent généralement pas être utilisées pour vous identifier.
Marketing
Le stockage ou l’accès technique est nécessaire pour créer des profils d’utilisateurs afin d’envoyer des publicités, ou pour suivre l’utilisateur sur un site web ou sur plusieurs sites web ayant des finalités marketing similaires.