Funciones de matriz de C ++ - Inicialización de matriz C ++ y matriz multidimensional

Tabla de contenido:

Anonim

¿Qué es la función de matriz C ++?

Sabemos que para poder usar cualquier valor más adelante, necesitamos almacenarlo en una variable. La variable tendrá una referencia a la memoria donde se almacenará este valor para que podamos usarlo cuando lo deseemos. Del mismo modo, considere un caso en el que tenemos cientos y miles de dichos datos que deben almacenarse en una variable para referencia futura. No es prácticamente posible almacenar todos estos valores en variables, ya que tendremos que crear cientos y miles de variables para ello. Estas variables ni siquiera serán fáciles de recordar. En este tema, vamos a aprender sobre las funciones de matriz de C ++.

Así viene el concepto de una matriz. Una matriz es básicamente una colección que es capaz de almacenar tantos elementos como queramos hasta que sean del mismo tipo. Una matriz entera, una matriz de caracteres, una matriz decimal, todo esto define el tipo de elementos almacenados en una matriz. Esto significa que la matriz de enteros solo tendrá valores enteros almacenados, una matriz de caracteres tendrá caracteres, etc. Además, estos valores se almacenan en una ubicación de memoria continua y pueden ser referenciados individualmente por su valor de índice. El valor del índice en una matriz comienza desde 0.

Considere un caso de una matriz entera con 3 elementos 10, 20, 30.

Las matrices son un concepto de estructura de datos muy importante implementado por la mayoría de los lenguajes de programación. C ++ también proporciona la matriz, que es una colección de elementos del mismo tipo de un tamaño fijo. Las dos cosas básicas a tener en cuenta al declarar una matriz es el tamaño de la matriz y el tipo de matriz. Dado que estas dos cosas deben declararse desde el principio al declarar una matriz, una matriz es de naturaleza estática. El tamaño de la matriz determina la cantidad de elementos que puede almacenar.

La sintaxis general de la declaración de matriz es:

Ejemplo

int pincode_of_cities(50)

El tamaño de la matriz debe ser un valor constante entero que debe ser mayor que 0. El tipo de matriz puede ser cualquier tipo de datos válido en C ++.

Inicialización de la matriz de C ++

Hay dos métodos básicos para inicializar una matriz:

Método 1: en el momento de la declaración

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

O

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

Método 2: usar un bucle

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

Esta es una matriz unidimensional o una matriz 1D. El segundo tipo de matriz es una matriz multidimensional que discutiremos poco después.

En primer lugar, veamos cómo podemos acceder a los valores desde una matriz. Pocos de los siguientes métodos se dan a continuación:

Acceso a valores de una matriz

Nombre de la matriz (índice): Esto devolverá el valor en la posición de índice mencionada.

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

Salida: 40

Para imprimir todos los valores en una 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;
)

Salida: 1020304050

Ejemplo:

#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;
)

Salida:

Ingrese 5 números naturales: 10 20 30 40 50
Suma = 150

Matriz multidimensional

Lo anterior es la declaración de una matriz unidimensional. El segundo tipo de matriz es la matriz multidimensional y también se conoce como matrices rectangulares en C ++. Dependiendo del requisito, puede ser una matriz bidimensional o una matriz tridimensional. Los valores se almacenan en un formato de tabla, también conocido como matriz en forma de filas y columnas.

La sintaxis para declarar una matriz multidimensional es:

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

Esto significa que la matriz anterior tiene -

  • 2 filas
  • 2 columnas

La matriz anterior se puede inicializar de la siguiente manera:

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;
)

Salida:

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;
)

Salida:

5 10 15

20 20 40

50 60 70

Ejemplo:

#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

Salida:

ciudad 1, semana día 1 = 12
ciudad 1, semana día 2 = 24
ciudad 2, semana día 1 = 35
ciudad 2, semana día 2 = 47

Artículos recomendados

Esta es una guía de las funciones de matriz de C ++. Aquí discutimos la inicialización de la matriz C ++ y la matriz multidimensional con los métodos, ejemplos y resultados. También puede consultar el siguiente artículo para obtener más información:

  1. Patrones de estrellas en c ++
  2. ¿Qué es C ++?
  3. Ventajas de la matriz
  4. C # Array vs List
  5. Guía de funciones de matriz en C
  6. Matriz multidimensional en Python
  7. Funciones de matriz PHP | Tipos de funciones de matriz en PHP