Introducción a las matrices en C ++

Para permitir que los datos se procesen con cualquier aplicación, primero debemos llevar los datos a la aplicación. Esto significa que debería haber algún espacio en la aplicación donde el valor debería almacenarse hasta que se ejecute el programa. Para servir el propósito de almacenar los valores, el lenguaje de programación nos ofrece variables. Las variables se utilizan para almacenar los valores para que la aplicación pueda utilizarlos para generar el resultado esperado. A medida que las variables almacenan, algunos valores ocupan espacio en la memoria asignada a la aplicación. Por lo tanto, el enfoque óptimo de la codificación es garantizar que el uso de la variable sea lo más bajo posible. Para mitigar el problema de asignación de memoria debido a la creación de una gran cantidad de variables, el concepto de matriz surgió. La matriz se puede considerar como la lista de valores que pertenece al mismo tipo de datos. En este artículo, vamos a aprender sobre la matriz usando el lenguaje de programación C ++.

¿Cómo funcionan las matrices en C ++?

A continuación se muestra la explicación de cómo funcionan las matrices:

  • La función de la matriz es almacenar los valores del mismo tipo de datos. Se supone que funciona de la misma manera que la variable y el único punto adicional que tiene sobre la variable es que es capaz de mantener varios valores al mismo tiempo. Cuando creamos la matriz en C ++ o en cualquiera de los lenguajes de programación, tenemos que indicar la cantidad de variables que queremos almacenar en la matriz.
  • Hay que tener en cuenta que el tamaño de la matriz permanece fijo durante todo el tiempo de ejecución de la aplicación y no se puede cambiar dinámicamente. Una vez que se define el tamaño de la matriz, podemos almacenar la misma cantidad de valores en ella. Si el tipo de datos de la matriz se define como un entero, no aceptará ningún valor que no sea un entero. Para localizar el valor contenido en la matriz, se deberá usar el índice.
  • Por ejemplo, si la matriz es capaz de mantener dos valores, el segundo valor se almacenará en el índice de una matriz cuando el índice de la matriz comience con cero. En la siguiente sección, aprenderemos la creación de matrices.

¿Cómo crear matrices en C ++?

La explicación a continuación dice que cómo crear matrices en c ++:

El enfoque de crear la matriz es exactamente similar a la creación de variables. El primer paso es declarar la matriz. Una vez que se declara la matriz, podemos inicializar la matriz al mismo tiempo o podría inicializarse más tarde. Al declarar la matriz, tenemos que mencionar tres cosas: el tipo de datos de la matriz, el nombre de la matriz y su tamaño. A continuación se muestra la sintaxis que muestra cómo simplemente declarar la matriz.

Sintaxis:

Datatype array_name(size);
Ex. int first_array(10);

La matriz definida aquí puede tener diez valores enteros. El nombre de la matriz es first_array y el número definido dentro del paréntesis grande indica el tamaño de la matriz. Ahora veamos cómo declarar e inicializar la variable al mismo tiempo.

Código:

Int first_array(4) = ( 1, 2, 3, 4)
Int first_array()= (1, 2, 3, 4, 5, 6)

En el ejemplo anterior, hemos visto que la matriz que ha definido el tamaño 4 ha aceptado los 4 valores. Si uno intenta enviar más de 4 valores, arrojará un error. Además, si no especifica el tamaño de la variable, puede almacenar todo el valor que desee.

Tipos de matrices en C ++

En el lenguaje de programación C ++ tenemos principalmente dos tipos de variables: matrices unidimensionales y matrices multidimensionales. Las tiendas unidimensionales almacenan los valores en forma de lista, mientras que la matriz multidimensional almacena el valor en la matriz. A continuación veremos cada uno de los tipos usando un ejemplo.

1. Matriz unidimensional

La matriz unidimensional puede definirse como el tipo de matriz que es capaz de contener los valores del mismo tipo de datos en forma de una lista. Es la forma más simple de matriz, ya que no requiere mucho esfuerzo para definir e inicializar dicha matriz. Se puede definir como int a (10), donde int es el tipo de datos es el nombre de la matriz y el tamaño de la matriz es 10. El siguiente ejemplo aclarará las cosas.

Código:

#include
#include
using namespace std;
void main()
(
int val_array(3);
int int_val=1, counter;
cout<<"Please enter three numbers that you want to multiply"< for(counter=0;counter<3;counter++)
(
cin>>val_array(counter);
int_val = int_val*val_array(counter);
)
cout<<"The multiplication of these three numbers is = "< getch();
)
#include
#include
using namespace std;
void main()
(
int val_array(3);
int int_val=1, counter;
cout<<"Please enter three numbers that you want to multiply"< for(counter=0;counter<3;counter++)
(
cin>>val_array(counter);
int_val = int_val*val_array(counter);
)
cout<<"The multiplication of these three numbers is = "< getch();
)
#include
#include
using namespace std;
void main()
(
int val_array(3);
int int_val=1, counter;
cout<<"Please enter three numbers that you want to multiply"< for(counter=0;counter<3;counter++)
(
cin>>val_array(counter);
int_val = int_val*val_array(counter);
)
cout<<"The multiplication of these three numbers is = "< getch();
)

El programa anterior está escrito para aceptar tres valores del usuario y luego esos valores se procesarán para generar el valor de multiplicación de todos ellos. El usuario de la matriz aquí se llama val_array y la matriz es capaz de contener tres valores. El bucle se usa para tomar el valor en la matriz y luego se multiplicaron. El resultado final de la multiplicación se ha almacenado en la variable int_val. Como la función es de naturaleza nula, no devolverá ningún valor.

Salida:

2. Matriz multidimensional

La matriz multidimensional puede definirse como la matriz que contiene los valores de la misma manera que una matriz. La matriz bidimensional se usa con mucha frecuencia y con el aumento del tamaño de la dimensión, la matriz se complica. Por ejemplo, es fácil trabajar con una matriz bidimensional en lugar de trabajar con una matriz tridimensional. La matriz bidimensional necesita dos tamaños para ser definidos para una dimensión cada uno. La matriz bidimensional puede estar en el programa como int a (5) (3). Esta matriz podrá mantener el valor en forma de matriz que tiene 5 filas y tres columnas. Comprendamos esto con la ayuda de un ejemplo.

Código:

#include
#include
using namespace std;
int main()
(
int val_array(5)(5);
int count_rows, count_cols, counter1, counter2;
cout<<"Please enter the size of the rows and columns that you wnant to input: ";
cin>>count_rows>>count_cols;
cout<<"PLease enter the values for matrics in row wise manner"< for(counter1=0;counter1 for(counter2=0;counter2 cin>>val_array(counter1)(counter2);
cout<<"The matrix will be as follows"< for(counter1=0;counter1 (
for(counter2=0;counter2 cout< cout< )
getch();
return 0;
)
#include
#include
using namespace std;
int main()
(
int val_array(5)(5);
int count_rows, count_cols, counter1, counter2;
cout<<"Please enter the size of the rows and columns that you wnant to input: ";
cin>>count_rows>>count_cols;
cout<<"PLease enter the values for matrics in row wise manner"< for(counter1=0;counter1 for(counter2=0;counter2 cin>>val_array(counter1)(counter2);
cout<<"The matrix will be as follows"< for(counter1=0;counter1 (
for(counter2=0;counter2 cout< cout< )
getch();
return 0;
)
#include
#include
using namespace std;
int main()
(
int val_array(5)(5);
int count_rows, count_cols, counter1, counter2;
cout<<"Please enter the size of the rows and columns that you wnant to input: ";
cin>>count_rows>>count_cols;
cout<<"PLease enter the values for matrics in row wise manner"< for(counter1=0;counter1 for(counter2=0;counter2 cin>>val_array(counter1)(counter2);
cout<<"The matrix will be as follows"< for(counter1=0;counter1 (
for(counter2=0;counter2 cout< cout< )
getch();
return 0;
)
#include
#include
using namespace std;
int main()
(
int val_array(5)(5);
int count_rows, count_cols, counter1, counter2;
cout<<"Please enter the size of the rows and columns that you wnant to input: ";
cin>>count_rows>>count_cols;
cout<<"PLease enter the values for matrics in row wise manner"< for(counter1=0;counter1 for(counter2=0;counter2 cin>>val_array(counter1)(counter2);
cout<<"The matrix will be as follows"< for(counter1=0;counter1 (
for(counter2=0;counter2 cout< cout< )
getch();
return 0;
)
#include
#include
using namespace std;
int main()
(
int val_array(5)(5);
int count_rows, count_cols, counter1, counter2;
cout<<"Please enter the size of the rows and columns that you wnant to input: ";
cin>>count_rows>>count_cols;
cout<<"PLease enter the values for matrics in row wise manner"< for(counter1=0;counter1 for(counter2=0;counter2 cin>>val_array(counter1)(counter2);
cout<<"The matrix will be as follows"< for(counter1=0;counter1 (
for(counter2=0;counter2 cout< cout< )
getch();
return 0;
)
#include
#include
using namespace std;
int main()
(
int val_array(5)(5);
int count_rows, count_cols, counter1, counter2;
cout<<"Please enter the size of the rows and columns that you wnant to input: ";
cin>>count_rows>>count_cols;
cout<<"PLease enter the values for matrics in row wise manner"< for(counter1=0;counter1 for(counter2=0;counter2 cin>>val_array(counter1)(counter2);
cout<<"The matrix will be as follows"< for(counter1=0;counter1 (
for(counter2=0;counter2 cout< cout< )
getch();
return 0;
)
#include
#include
using namespace std;
int main()
(
int val_array(5)(5);
int count_rows, count_cols, counter1, counter2;
cout<<"Please enter the size of the rows and columns that you wnant to input: ";
cin>>count_rows>>count_cols;
cout<<"PLease enter the values for matrics in row wise manner"< for(counter1=0;counter1 for(counter2=0;counter2 cin>>val_array(counter1)(counter2);
cout<<"The matrix will be as follows"< for(counter1=0;counter1 (
for(counter2=0;counter2 cout< cout< )
getch();
return 0;
)
#include
#include
using namespace std;
int main()
(
int val_array(5)(5);
int count_rows, count_cols, counter1, counter2;
cout<<"Please enter the size of the rows and columns that you wnant to input: ";
cin>>count_rows>>count_cols;
cout<<"PLease enter the values for matrics in row wise manner"< for(counter1=0;counter1 for(counter2=0;counter2 cin>>val_array(counter1)(counter2);
cout<<"The matrix will be as follows"< for(counter1=0;counter1 (
for(counter2=0;counter2 cout< cout< )
getch();
return 0;
)
#include
#include
using namespace std;
int main()
(
int val_array(5)(5);
int count_rows, count_cols, counter1, counter2;
cout<<"Please enter the size of the rows and columns that you wnant to input: ";
cin>>count_rows>>count_cols;
cout<<"PLease enter the values for matrics in row wise manner"< for(counter1=0;counter1 for(counter2=0;counter2 cin>>val_array(counter1)(counter2);
cout<<"The matrix will be as follows"< for(counter1=0;counter1 (
for(counter2=0;counter2 cout< cout< )
getch();
return 0;
)

En este programa, hemos utilizado una matriz bidimensional. La forma en que se definió la matriz utilizando dos tamaños, indica que la matriz utilizada es bidimensional. Si hubiera habido tres tamaños, entonces la matriz sería tridimensional. Se le pide al usuario que ingrese el número de filas y columnas que desea en la matriz. Una vez que el usuario especifica los números, se les pide que ingresen los valores que desean en las filas y columnas de la matriz. Aquí el usuario ha enviado 2 3, lo que significa que quiere dos filas y tres columnas en la matriz. Sepa que tuvieron que enviar seis valores ya que la matriz con dos filas y tres columnas tiene seis valores. Cuando se han enviado todos los valores, se han representado en forma de matriz. Todo el programa se implementa utilizando la matriz bidimensional.

Salida:

Método de pasar matriz

Los métodos se muestran a continuación:

Para pasar la variable en cualquier método como parámetro, lo único que necesita para aceptar el valor desde donde se llama es el tipo de datos y el nombre de la variable que contendrá el Valor. El enfoque de pasar la matriz al método es similar a la forma en que se pasa cualquier variable normal. La única diferencia es que, en lugar de mencionar una sola variable, tendremos que usar la matriz con un tamaño específico en el lugar de la matriz. Comprendamos esto usando la sintaxis.

Sintaxis:

//defining method that accepts an array as a parameter.
int handle_array(int a(6));

Aquí el nombre del método es handle_array y tiene una matriz como parámetro. El nombre de la matriz es a y la matriz es capaz de contener seis valores. Ahora veamos cómo se puede pasar el argumento al método handle_array.

Sintaxis:

int arrr(6) = (1, 2, 3, 4, 5, 6);
handle_array(arr) ;

Primero, necesitamos asignar los valores a otras variables que tenemos que pasar al método handle_array. Una vez que se asignan los valores, necesitamos pasar la matriz como argumento al llamar a la función handle_array. En el fragmento anterior, está claro cómo se ha asignado la matriz con los valores y se ha pasado como argumento para que los valores se puedan pasar donde se ha definido la función handle_array.

Conclusión

La matriz en C ++ se considera una característica muy esencial, ya que ayuda en la gestión de la memoria y también mejora la eficiencia del programa. Se puede utilizar en varios algoritmos para aprovechar su capacidad de ofrecer almacenamiento de datos multidimensionales. Siempre es óptimo usar una matriz cuando es necesario almacenar valores del mismo tipo de datos. No solo ayuda a conservar los recursos, sino que también reduce el tiempo de ejecución del programa.

Artículos recomendados

Esta ha sido una guía de matrices en C ++. Aquí discutimos cómo funcionan las matrices en C ++, cómo crear, tipos de matrices, método de pasar, con códigos, sintaxis y salidas, etc. También puede consultar nuestros artículos para obtener más información.

  1. ¿Qué es C ++?
  2. Introducción a C ++
  3. Operadores C ++
  4. Comandos C ++
  5. Introducción a las matrices en C #
  6. Matrices en PHP