Dada una array de tamaño n*n, imprima la array en el siguiente patrón.
Salida: 1 2 5 3 6 9 4 7 10 13 8 11 14 12 15 16
Ejemplos:
Input :matrix[2][2]= { {1, 2}, {3, 4} } Output : 1 2 3 4 Input :matrix[3][3]= { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} } Output : 1 2 4 3 5 7 6 8 9
A continuación se muestra la implementación de C++ para el patrón anterior.
C++
// CPP program to print matrix downward #include <bits/stdc++.h> using namespace std; void printMatrixDiagonallyDown(vector<vector<int> > matrix, int n) { // printing elements above and on // second diagonal for (int k = 0; k < n; k++) { // traversing downwards starting // from first row int row = 0, col = k; while (col >= 0) { cout << matrix[row][col] << " "; row++, col--; } } // printing elements below second // diagonal for (int j = 1; j < n; j++) { // traversing downwards starting // from last column int col = n - 1, row = j; while (row < n) { cout << matrix[row][col] << " "; row++, col--; } } } int main() { vector<vector<int> > matrix{ { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } }; int n = 3; printMatrixDiagonallyDown(matrix, n); return 0; }
Java
// JAVA program to print // matrix downward class GFG{ static void printMatrixDiagonallyDown(int[][] matrix, int n) { // printing elements above and on // second diagonal for (int k = 0; k < n; k++) { // traversing downwards // starting from first row int row = 0, col = k; while (col >= 0) { System.out.print(matrix[row][col] + " "); row++; col--; } } // printing elements below // second diagonal for (int j = 1; j < n; j++) { // traversing downwards starting // from last column int col = n - 1, row = j; while (row < n) { System.out.print(matrix[row][col] + " "); row++; col--; } } } // Driver code public static void main(String[] args) { int[][] matrix = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; int n = 3; printMatrixDiagonallyDown(matrix, n); } } // This code is contributed by Rajput-Ji
Python 3
# Python 3 program to print matrix downward def printMatrixDiagonallyDown(matrix,n): # printing elements above and on # second diagonal for k in range(n): # traversing downwards starting # from first row row = 0 col = k while (col >= 0): print(matrix[row][col],end = " ") row += 1 col -= 1 # printing elements below second # diagonal for j in range(1,n): # traversing downwards starting # from last column col = n - 1 row = j while (row < n): print(matrix[row][col],end = " ") row += 1 col -= 1 if __name__ == '__main__': matrix = [[1, 2, 3],[4, 5, 6],[7, 8, 9]] n = 3 printMatrixDiagonallyDown(matrix, n) # This code is contributed by Surendra_Gangwar
C#
// C# program to print // matrix downward using System; class GFG{ static void printMatrixDiagonallyDown(int[,] matrix, int n) { // printing elements above and on // second diagonal for (int k = 0; k < n; k++) { // traversing downwards // starting from first row int row = 0, col = k; while (col >= 0) { Console.Write(matrix[row,col] + " "); row++; col--; } } // printing elements below // second diagonal for (int j = 1; j < n; j++) { // traversing downwards starting // from last column int col = n - 1, row = j; while (row < n) { Console.Write(matrix[row,col] + " "); row++; col--; } } } // Driver code public static void Main(String[] args) { int[,] matrix = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; int n = 3; printMatrixDiagonallyDown(matrix, n); } } // This code is contributed by Amit Katiyar
Javascript
<script> // JavaScript program to print // matrix downward function printMatrixDiagonallyDown(matrix,n) { // printing elements above and on // second diagonal for (let k = 0; k < n; k++) { // traversing downwards // starting from first row let row = 0, col = k; while (col >= 0) { document.write(matrix[row][col] + " "); row++; col--; } } // printing elements below // second diagonal for (let j = 1; j < n; j++) { // traversing downwards starting // from last column let col = n - 1, row = j; while (row < n) { document.write(matrix[row][col] + " "); row++; col--; } } } // Driver code let matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]; let n = 3; printMatrixDiagonallyDown(matrix, n); // This code is contributed by sravan kumar </script>
Producción:
1 2 4 3 5 7 6 8 9
Complejidad temporal: O(n 2 )
Espacio Auxiliar: 1
Publicación traducida automáticamente
Artículo escrito por Dhirendra121 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA