Deux dimensions des tableaux en C ++




двумерные массивы c++, двумерные массивы с++, многомерные массивы с++

En plus des tableaux à une dimension, vous pourriez avoir besoin pour l'utilisation d'un tableau multidimensionnel (bidimensionnel, tridimensionnel…). Cette leçon sera considérée tableaux à deux dimensions. Ils sont les plus courantes, et le reste sont extrêmement rares.

Nous avons déjà discuté dans les articles précédents réseaux bidimensionnels et Si-stroki (tableaux de caractères).Il a dit, que les éléments de réseau sont placés consécutivement dans la mémoire – élément par élément. Visuellement, ils peuvent être représentés comme une seule ligne dans la mémoire de données. Pour accéder à un élément du tableau, suffit d'indiquer le nom et l'index article. La première différence est une matrice bidimensionnelle d'unidimensionnel – les éléments comprennent deux indices: int arr [3][4]; Les données de ce tableau peuvent être représentés, une table: 3 x 4.

двумерные массивы c++, многомерные массивы c++

Le premier nom de l'index de tableau – Cet indice de ligne, deuxième – index de colonne.

двумерные массивы c++, многомерные массивы c++

Lorsque vous avez regardé ces images, Il peut être dit à propos de la matrice à deux dimensions – un tableau de, dans lequel chaque élément de réseau est également. int arr [3][4]; – est une matrice de 3 éléments, dont chacun est un tableau de 4 éléments.

Ceux-ci matrice bidimensionnelle et sont agencés de manière séquentielle dans la mémoire, mais par la ligne. Premier indice de ligne 0 – les cellules du 0e-3e, dessous de la ligne avec l'index 1 – les cellules du 0e-3e …

Ce qui peut stocker les éléments de tableaux à deux dimensions? par exemple, Vous pouvez stocker le nombre de places de stationnement dans le parking à plusieurs étages (6 et sur chacun des étages 15 places de parking). Pour ce faire, déclarer un tableau à deux dimensions int floorsAndParkings[6][15]; et à écrire dans son numéro de cellule de sièges à chaque étage. Le tableau à deux dimensions peut stocker le C-line. par exemple: carboniser someStr [3][256]; Donc, nous avons annoncé un tableau, qui gardera 3 des lignes de 256 chacun des personnages.

L'initialisation d'une matrice bidimensionnelle.

Enregistrer les données dans le tableau à deux dimensions peuvent être dans sa déclaration. Prenons l'exemple d'une voiture lieux. Laissez-nous dans le stationnement 2 sur le sol 4 espace de stationnement sur chaque. Nous déclarons un tableau et initialisons:

int floorsAndParkings[2][4] = { { 1, 2, 3, 4 }, { 1, 2, 3, 4 } };

Pour initialiser cette regardé plus lisible, arranger pour:

Comme vous pouvez rappeler, selon la norme C ++ 11, marque = vous pouvez manquer. Les chaînes sont initialisés sur le même principe:

Comment afficher un tableau bidimensionnel de données? Vous pouvez aller un long chemin et se référer à chaque élément manuel:

двумерные массивы c++, многомерные массивы c++

La sortie du tableau à deux dimensions de C-chaînes sur l'écran un peu plus facile, puisque nous avons besoin de seulement préciser le nom de l'index du tableau et la ligne. En outre, le flux de sortie cout seule affiche tous les éléments du tableau de caractères, jusqu'à ce qu'il détecte ' 0'

двумерные массивы c++, многомерные массивы c++

bon! Et si nous avons besoin pour remplir une des données de tableau et d'affichage int floorsAndParkings[20][100] ou omble someStr[50][256]? Cela peut être un travail ingrat dix fois pour faciliter, en utilisant des cycles. plus précisément boucles imbriquées.

Prenons un exemple avec parking. Voir schéma de stationnement de l'utilisateur: étages et un espace de stationnement. Pour réserver une place, il doit choisir le numéro de plancher et le numéro de siège. Après la réservation, – valeur d'écriture 0 dans la cellule appropriée, cela signifierait “endroit très fréquenté”.

nous avons utilisé pour la boucle ,sur les lignes 15 – 24, pour écrire des données réseau et les afficher simultanément sur l'écran. Si elle est présente ce tableau à deux dimensions comme une table – la boucle externe pour passe dans les indices de lignes – 0-b à 6-j. boucle imbriquée – index sur les colonnes (les cellules des lignes de la table) – de 0 à j-9-j. lignes 32 – 82 Il est le cycle faire pendant. Son rôle dans la, offre encore et encore pour réserver une place pour la voiture, Il est requis par l'utilisateur. Il y a deux boucles imbriquées faire pendant. Ils mettent en œuvre une variété d'étages et parking avec protection contre les valeurs d'entrée incorrectes. lignes 57 – 81 comprennent bloc sinon , qui, dans le cas d'un bon choix de l'utilisateur affiche un message sur la réservation réussie. Si la place est occupée (cellule contient une valeur 0) – aviser le, Il propose une gamme de sol et répéter le site et affiche le système de stationnement mis à jour, qui a marqué sièges réservés.

Il fonctionne comme ceci:

двумерные массивы c++, многомерные массивы c++

extension…

двумерные массивы c++, многомерные массивы c++

Je recommande de regarder la vidéo. Tableaux à deux dimensions avec un 13 minutes.

Je propose de résoudre plusieurs tâches relatives Deux dimensions des tableaux.

Partager des liens vers des articles de notre site avec vos amis sur le réseau social. boutons sociaux. réseaux conformément à l'article. merci d'avance!

Bulletin de nouvelles leçons sur la programmation:

Deux dimensions des tableaux en C ++
4.8 (96.67%) 6 votes

21 réflexions sur "Deux dimensions des tableaux en C ++

  1. Pourquoi lors de la vérification du tableau on enlève du sol et de l'unité parking situé?
    (floorsAndParkings[sol – 1][place de parking – 1])

  2. Почему у меня вышла ошибка “Erreur : name lookup of ‘fchanged for ISO ‘forscoping [-fpermissive]”.

Laisser un commentaire

Votre adresse email ne sera pas publiée. les champs requis sont indiqués *