Aquí veremos cómo imprimir una array 2D usando un programa C++. A continuación se muestran los ejemplos:
Entrada: {{1, 2, 3},
{4, 5, 6},
{7, 8, 9}}
Salida: 1 2 3
4 5 6
7 8 9Entrada: {{11, 12, 13},
{14, 15, 16}}
Salida: 11 12 13
14 15 16Hay 2 formas de imprimir una array 2D en C++:
- Uso de bucle for.
- Uso de bucle for basado en rango.
Comencemos discutiendo cada uno de estos métodos en detalle.
1. Usando el bucle for
El método general para imprimir una array 2D usando bucle for requiere dos bucles for para recorrer todas las filas y columnas de la array 2D dada e imprimir los elementos.
- El ciclo externo recorrerá desde el índice 0 hasta la longitud_fila-1.
- Atraviesa la array 2D en forma de fila, por lo tanto, la primera fila se imprime y luego imprime la segunda fila.
A continuación se muestra el programa C++ para imprimir una array 2D usando for loop:
C++
// C++ program to print
// 2D array using for loop
#include <iostream>
using
namespace
std;
// Driver code
int
main()
{
const
int
i = 3, j = 3;
// Declaring array
int
arr[i][j] = {{1, 2, 3},
{4, 5, 6},
{7, 8, 9}};
for
(
int
a = 0; a < 3; a++)
{
for
(
int
b = 0; b < 3; b++)
{
cout << arr[a][b] <<
" "
;
}
cout << endl;
}
return
0;
}
Producción1 2 3 4 5 6 7 8 9Complejidad de tiempo: O(n*m) donde n y m son dimensiones de la array.
Espacio Auxiliar: O(1)2. Usar un bucle for basado en rango
En lugar de usar for loop, este método usará un for loop basado en rango. A continuación se muestra el programa C++ para imprimir una array 2D utilizando un bucle for basado en rango:
C++
// C++ program to print 2D
// array using range-based for loop
#include <iostream>
using
namespace
std;
// Driver code
int
main()
{
const
int
i = 3, j = 3;
int
matrix[i][j] = {{1, 2, 3},
{4, 5, 6},
{7, 8, 9}};
for
(
auto
&row : matrix)
{
for
(
auto
&column : row)
{
cout << column <<
" "
;
}
cout << endl;
}
}
Producción1 2 3 4 5 6 7 8 9Complejidad de tiempo: O(n*m) donde n y m son dimensiones de la array.
Espacio Auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por bskapardi2002 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA