Funções de matriz C ++ - Inicializando matriz C ++ e matriz multidimensional

Índice:

Anonim

O que é a função de matriz C ++?

Sabemos que, para poder usar qualquer valor posteriormente, precisamos armazená-lo em uma variável. A variável terá uma referência à memória na qual esse valor será armazenado, para que possamos usá-lo sempre que quisermos. Da mesma forma, considere um caso em que temos centenas e milhares desses dados que precisam ser armazenados em uma variável para referência futura. Não é praticamente possível armazenar todos esses valores em variáveis, pois teremos que criar centenas e milhares de variáveis ​​para ele. Essas variáveis ​​nem serão fáceis de lembrar. Neste tópico, vamos aprender sobre as funções de matriz C ++.

Assim, vem o conceito de uma matriz. Uma matriz é basicamente uma coleção capaz de armazenar quantos itens quisermos até que sejam do mesmo tipo. Uma matriz inteira, uma matriz de caracteres, uma matriz decimal, todos eles definem o tipo de itens armazenados em uma matriz. Isso significa que a matriz inteira terá apenas valores inteiros armazenados, uma matriz de caracteres terá caracteres e assim por diante. Além disso, esses valores são armazenados em um local de memória contínua e podem ser referenciados individualmente por seu valor de índice. O valor do índice em uma matriz começa em 0.

Considere um caso de uma matriz inteira com 3 elementos 10, 20, 30.

Matrizes são um conceito de estrutura de dados muito importante implementado pela maioria das linguagens de programação. O C ++ também fornece a matriz, que é uma coleção de elementos do mesmo tipo de tamanho fixo. As duas coisas básicas a ter em mente ao declarar uma matriz são o tamanho da matriz e o tipo da matriz. Como essas duas coisas devem ser declaradas logo no início, enquanto se declara uma matriz, uma matriz é de natureza estática. O tamanho da matriz determina o número de elementos que ela pode armazenar.

A declaração de sintaxe geral da matriz é -

Exemplo -

int pincode_of_cities(50)

O tamanho da matriz deve ser um valor constante inteiro que deve ser maior que 0. O tipo de matriz pode ser qualquer tipo de dados válido em C ++.

Inicializando a matriz C ++

Existem dois métodos básicos para inicializar uma matriz -

Método 1: No momento da declaração

int pincode(5) = (123, 000, 342, 678, 654);

OU

int pincode() = (123, 000, 342, 678, 654);

Método 2: usando um loop

int number(5);
for(int i = 0; i number = i;
int number(5);
for(int i = 0; i number = i;

Esta é uma matriz unidimensional ou uma matriz 1D. O segundo tipo de matriz é uma matriz multidimensional que discutiremos pouco depois.

Primeiro, vamos ver como podemos acessar valores de uma matriz. Alguns dos métodos a seguir são dados abaixo -

Acessando valores de uma matriz

Nome da matriz (índice): Isso retornará o valor na posição do índice mencionada.

#include
using namespace std;
int arr(5) = (10, 20, 30, 40, 50);
int main ()
(
cout << arr(3);
return 0;
)

Saída: 40

Para imprimir todos os valores em uma matriz -

#include
using namespace std;
int arr(5) = (10, 20, 30, 40, 50);
int i;
int main ()
(
for ( i=0 ; i<5 ; i++ )
(
cout << arr(i);
)
return 0;
)

Saída: 1020304050

Exemplo:

#include
using namespace std;
int main()
(
int num(5), sum = 0;
cout << "Enter 5 natural numbers: ";
// Store numbers
// Then find sum
for (int i = 0; i < 5; ++i)
(
cin >> num(i);
sum += num(i);
)
cout << "Sum = " << sum << endl;
return 0;
)

Resultado:

Digite 5 números naturais: 10 20 30 40 50
Soma = 150

Matriz multidimensional

A descrição acima é a declaração para uma matriz dimensional única. O segundo tipo de matriz é a matriz multidimensional e também é conhecida como matrizes retangulares em C ++. Dependendo do requisito, pode ser uma matriz bidimensional ou uma matriz tridimensional. Os valores são armazenados em um formato de tabela, também conhecido como matriz na forma de linhas e colunas.

A sintaxe para declarar uma matriz multidimensional é -

(number of rows)(number of columns) int two_dim(2)(2);

Isso significa que a matriz acima tem -

  • 2 linhas
  • 2 colunas

A matriz acima pode ser inicializada da seguinte maneira -

Método 1:

#include
using namespace std;
int main()
(
int arr(3)(3) =
(
(1, 5, 15),
(44, 0, 23),
(29, 41, 85) ); //declaring and initializing at the same time
//traversing through the array
for(int i = 0; i < 3; ++i)
(
for(int j = 0; j < 3; ++j)
(
cout<< arr(i)(j)<<" ";
)
cout<<"\n"; //this will take to a new line once the all the columns of the //particular row has been traversed
)
return 0;
)

Resultado:

1 5 15

44 0 23

29 41 85

Método 2:

#include
using namespace std;
int main()
(
int arr(3)(3); //declaring a 2D array
arr(0)(0)=5; //initializing the array
arr(0)(1)=10;
arr(0)(2)=15;
arr(1)(0)=20;
arr(1)(1)=30;
arr(1)(2)=40;
arr(2)(0)=50;
arr(2)(1)=60;
arr(2)(2)=70;
//traversing through the elements in the array
for(int i = 0; i < 3; ++i)
(
for(int j = 0; j < 3; ++j)
(cout<< arr(i)(j)<<” ” ;
)
cout<<"\n"; //this will take to a new line once the all the columns of the //particular row has been traversed
)
return 0;
)

Resultado:

5 10 15

20 20 40

50 60 70

Exemplo:

#include
using namespace std;
const int city = 2;
const int week = 2;
int main()
(
int temp(city)(week);
cout << "Enter temp for city \n";
// Insert values
for (int i = 0; i < city; ++i)
(
for(int j = 0; j < week; ++j)
(
cout << "city " << i + 1 << ", Week Day " << j + 1 << " : ";
cin >> temp(i)(j);
)
)
// Access values
for (int i = 0; i < city; ++i)
(
for(int j = 0; j < week; ++j)
(
cout << "city " << i + 1 << ", Week Day " << j + 1 << " = " << temp(i)(j) << endl;
)
)
return 0;
)
Enter temp for city
city 1, Week Day 1 : 12
city 1, Week Day 2 : 24
city 2, Week Day 1 : 35
city 2, Week Day 2 : 47

Resultado:

cidade 1, dia da semana 1 = 12
cidade 1, dia da semana 2 = 24
cidade 2, dia da semana 1 = 35
cidade 2, dia da semana 2 = 47

Artigos recomendados

Este é um guia para funções de matriz C ++. Aqui discutimos a Inicialização da matriz C ++ e da matriz multidimensional com os métodos, exemplos e saída. Você também pode consultar o seguinte artigo para saber mais -

  1. Padrões de estrelas em c ++
  2. O que é C ++
  3. Vantagens da matriz
  4. Matriz C # vs Lista
  5. Guia de funções de matriz em C
  6. Matriz multidimensional em Python
  7. Funções de matriz PHP | Tipos de funções de matriz em PHP