Tablica tablic w C ++

Tablica tablic w C ++
Tablica tablic, znana również jako tablica dwuwymiarowa, to struktura danych w C ++, która pozwala przechowywać wiele tablic danych w formacie podobnym do siatki. W przeciwieństwie do jednowymiarowej tablicy, która przechowuje dane w jednym wierszu, dwuwymiarowa tablica może przechowywać dane w wielu rzędach i kolumnach. Każdy element w tablicy sama jest tablicą, z ustaloną liczbą elementów odpowiadających liczbie kolumn w tablicy.

Tablice dwuwymiarowe mogą być przydatne do przechowywania danych, które mają wiele wymiarów lub są zorganizowane w tabeli lub siatce. Na przykład możesz użyć dwuwymiarowej tablicy do przechowywania ocen dla grupy studentów, przy czym każdy wiersz reprezentuje innego ucznia i każdą kolumnę reprezentującą inne zadanie lub egzaminację.

Deklaracja macierzy wielowymiarowej w C++

Aby zadeklarować tablicę tablic w C ++, musisz użyć następującej składni:

W tej składni data_type odnosi się do typu danych przechowywanego w tablicy. Nazwa array_name to nazwa tablicy. Num_rows to liczba wierszy w tablicy. A num_cols to liczba kolumn w tablicy.

Różne sposoby deklarowania wielowymiarowych tablic w C++

Używamy tablicy typu liczb całkowitych, abyśmy mogli łatwo zrozumieć działanie tablic w C ++ i sposób, w jaki umieszczamy dane w wierszach i kolumnach tablicy. Poniższy program deklaruje szereg tablic całkowitych. Tworzy tablicę 3 × 3 sieci, która jest typem liczb całkowitych:

int Grid [3] [3];

Jak dowiedzieliśmy się w poprzedniej składni, 3 × 3 oznacza, że ​​w tablicy znajdują się 3 wiersze i 3 kolumny. Na przykład: chcemy przypisać wartość, która jest 25 do elementu w drugim wierszu i trzeciej kolumnie tablicy siatki.

siatka [1] [2] = 25;

To ustawia wartość elementu w drugim rzędzie i trzeciej kolumnie, która ma zerowy wskaźnik odpowiednio 1 i 2 do 25. Możesz także zainicjować tablicę tablic, gdy ją deklarujesz. Na przykład następujący kod deklaruje i inicjuje sieć znaków 2 × 2:

Char Board [2] [2] = 'x', 'o',
'WÓŁ';

To tworzy tablicę nazwy 2 × 2, która zawiera znaki o wartościach „x”, „o”, „o” i „x”. Aby iterować nad szeregiem tablic, wykorzystamy pętle.

Przykład 1: Wykazanie wielowymiarowej tablicy typu liczb całkowitych

Oto pierwszy prosty przykład wielowymiarowych tablic w C++. W tym przykładzie najpierw dołączamy podstawowe pliki nagłówka, które są przydatne w uzyskaniu wejścia i drukowania wyjścia w oknie konsoli użytkownika. Następnie rozpoczynamy funkcję Main (), abyśmy mogli łatwo wykazać działanie tablic wielowymiarowych.

Najpierw zainicjujemy tablicę INT nazwy „Grid”, która zawiera 3 rzędy i 3 kolumny. Następnie przechowujemy dane w siatce. Aby uzyskać dane z tablicy siatki, używamy pętli, która działa iteracyjnie do wydrukowania wszystkich danych siatki na ekranie wyjściowym.

#włączać
#włączać
za pomocą przestrzeni nazw Std;
int main ()

int Grid [3] [3] = 1, 4, 7,
2, 5, 8,
3, 6, 9;
dla (int i = 0; i < 3; ++i)

for (int j = 0; j < 3; ++j)

Cout << grid[i][j] << " ";

Cout << endl;

Ten kod drukuje następujące dane wyjściowe:

Przykład 2: Demonstrowanie aranżacji siedzących kina, choć wielowymiarowe tablice w C++

Oto kolejny przykład szeregu tablic w C++. Załóżmy, że chcemy przechowywać aranżacje siedzące kina, w którym każde miejsce może być puste lub zajęte. Możemy użyć dwuwymiarowej tablicy do przechowywania tych danych, przy czym każdy wiersz reprezentuje inny rząd siedzeń, a każda kolumna reprezentuje inne miejsce w tym rzędzie. Oświadczamy dwuwymiarową tablicę o nazwie „Siedzenie” z 5 wierszy i 10 kolumnami.

Oddzielny wiersz siedzeń jest reprezentowany przez każdy rząd, a inne miejsce w tym rzędzie jest reprezentowane przez każdą kolumnę. Zainicjujemy tablicę z niektórymi przykładowymi danymi, w których 0 reprezentuje puste siedzenie, a 1 reprezentuje zajęte miejsce. Aby uzyskać dostęp do określonego siedzenia, możemy użyć indeksu wiersza i kolumn tego siedzenia.

Na przykład, aby sprawdzić, czy siedzenie w trzecim rzędzie i piątej kolumnie są puste, używamy instrukcji IF-ELSE. Na przykład: siedzenie [2] reprezentuje trzeci rząd tablicy, który zawiera układ miejsc do siedzenia dla trzeciego rzędu siedzeń. Siedzenie [2] [4] reprezentuje piąty element trzeciego rzędu, który jest siedzeniem w trzecim rzędzie i piątej kolumnie.

Następnie używamy za pętla, która wielokrotnie iteruje przedmioty tablicy i wykonujemy wszelkie niezbędne operacje na każdym siedzeniu.

#włączać
#włączać
za pomocą przestrzeni nazw Std;
int main ()

Int siedzące [5] [10] = 0, 0, 0, 1, 1, 1, 1, 0, 0, 0,
0, 1, 1, 1, 1, 1, 1, 1, 1, 0,
0, 1, 1, 0, 0, 0, 0, 1, 1, 0,
1, 1, 0, 0, 0, 0, 0, 0, 1, 1,
1, 1, 0, 0, 0, 0, 0, 0, 1, 1;
int seatstatus = siedzenie [2] [4];
if (SeatStatus == 0)
Cout << "Seat is empty" << endl;
w przeciwnym razie
Cout << "Seat is occupied" << endl;

int okupedSeats = 0;
dla (int i = 0; i < 5; i++)
for (int j = 0; j < 10; j++)
if (siedzenie [i] [j] == 1)
okupowaneSeats ++;



Cout << "There are " << occupiedSeats << " occupied seats." << endl;

Na tej ilustracji pętla wewnętrzna i zewnętrzna pętla naprzemiennie iterują nad każdym rządem w tablicy. If (siedzenie [i] [j] == 1) Wewnątrz wewnętrznej pętli sprawdza, czy bieżące siedzenie jest zajęte. Jeśli tak, zwiększa zajęty licznik siedzenia. Na końcu pętli program wyświetla całkowitą liczbę zajętych miejsc. Oto dane wyjściowe generowane przez opracowanie poprzedniego programu:

Wniosek

Dowiedzieliśmy się, że tablica tablic to struktura danych, która zawiera wiele tablic w jednej tablicy, umożliwiając reprezentację danych w strukturze podobnej do matrycy. Nauczyliśmy się również, jak tworzyć bardziej złożone struktury danych, takie jak tabele lub kostki danych. Chociaż mogą być potężne, praca z tablicami może być również bardziej złożona i wymagać dobrego zrozumienia składni i metod. Dlatego wdrożyliśmy wiele przykładów, abyśmy mogli łatwo zrozumieć koncepcje.