Matrices C ++

C ++ proporciona una estructura de datos, the array, que almacena una colección secuencial de tamaño fijo de elementos del mismo tipo. Una matriz se usa para almacenar una colección de datos, pero a menudo es más útil pensar en una matriz como una colección de variables del mismo tipo.

En lugar de declarar variables individuales, como número0, número1, ... y número99, declaras una variable de matriz como números y usas números [0], números [1] y ..., números [99] para representar variables individuales. Se accede a un elemento específico de una matriz mediante un índice.

Todas las matrices constan de ubicaciones de memoria contiguas. La dirección más baja corresponde al primer elemento y la dirección más alta al último elemento.

Declaración de matrices

Para declarar una matriz en C ++, el programador especifica el tipo de elementos y el número de elementos requeridos por una matriz de la siguiente manera:

type arrayName [ arraySize ];

Esto se llama matriz unidimensional. losarraySize debe ser una constante entera mayor que cero y typepuede ser cualquier tipo de datos C ++ válido. Por ejemplo, para declarar una matriz de 10 elementos llamada balance de tipo double, use esta declaración:

double balance[10];

Inicialización de matrices

Puede inicializar los elementos de la matriz de C ++ uno por uno o usando una sola declaración de la siguiente manera:

double balance[5] = {1000.0, 2.0, 3.4, 17.0, 50.0};

El número de valores entre llaves {} no puede ser mayor que el número de elementos que declaramos para el arreglo entre corchetes []. A continuación se muestra un ejemplo para asignar un solo elemento de la matriz:

Si omite el tamaño de la matriz, se crea una matriz lo suficientemente grande como para contener la inicialización. Por lo tanto, si escribe -

double balance[] = {1000.0, 2.0, 3.4, 17.0, 50.0};

Creará exactamente la misma matriz que hizo en el ejemplo anterior.

balance[4] = 50.0;

Lo anterior cesionarios declaración elemento número 5 º en la matriz de un valor de 50,0. Matriz con 4 ésimo índice será 5 ° , es decir, último elemento porque todas las matrices tienen 0 como el índice de su primer elemento que también se llama índice de base. A continuación se muestra la representación pictórica de la misma matriz que discutimos anteriormente:

Acceso a elementos de matriz

Se accede a un elemento indexando el nombre de la matriz. Esto se hace colocando el índice del elemento entre corchetes después del nombre de la matriz. Por ejemplo

double salary = balance[9];

La declaración anterior tomará el décimo elemento de la matriz y asignará el valor a la variable de salario. A continuación se muestra un ejemplo, que utilizará los tres conceptos mencionados anteriormente, a saber. declaración, asignación y acceso a matrices -

#include <iostream>
using namespace std;
 
#include <iomanip>
using std::setw;
 
int main () {

   int n[ 10 ]; // n is an array of 10 integers
 
   // initialize elements of array n to 0          
   for ( int i = 0; i < 10; i++ ) {
      n[ i ] = i + 100; // set element at location i to i + 100
   }
   cout << "Element" << setw( 13 ) << "Value" << endl;
 
   // output each array element's value                      
   for ( int j = 0; j < 10; j++ ) {
      cout << setw( 7 )<< j << setw( 13 ) << n[ j ] << endl;
   }
 
   return 0;
}

Este programa hace uso de setw()función para formatear la salida. Cuando se compila y ejecuta el código anterior, produce el siguiente resultado:

Element        Value
      0          100
      1          101
      2          102
      3          103
      4          104
      5          105
      6          106
      7          107
      8          108
      9          109

Matrices en C ++

Las matrices son importantes para C ++ y deberían necesitar muchos más detalles. A continuación se describen algunos conceptos importantes, que deberían quedar claros para un programador de C ++:

No Señor Concepto y descripción
1 Matrices multidimensionales

C ++ admite matrices multidimensionales. La forma más simple de la matriz multidimensional es la matriz bidimensional.

2 Puntero a una matriz

Puede generar un puntero al primer elemento de una matriz simplemente especificando el nombre de la matriz, sin ningún índice.

3 Pasar matrices a funciones

Puede pasar a la función un puntero a una matriz especificando el nombre de la matriz sin un índice.

4 Devolver matriz de funciones

C ++ permite que una función devuelva una matriz.