El siguiente programa agrega dos arrays cuadradas de tamaño 4*4, podemos cambiar N por diferentes dimensiones.
Implementación:
C++
// C++ program for addition // of two matrices #include <bits/stdc++.h> using namespace std; #define N 4 // This function adds A[][] and B[][], and stores // the result in C[][] void add(int A[][N], int B[][N], int C[][N]) { int i, j; for (i = 0; i < N; i++) for (j = 0; j < N; j++) C[i][j] = A[i][j] + B[i][j]; } // Driver code int main() { int A[N][N] = { {1, 1, 1, 1}, {2, 2, 2, 2}, {3, 3, 3, 3}, {4, 4, 4, 4}}; int B[N][N] = { {1, 1, 1, 1}, {2, 2, 2, 2}, {3, 3, 3, 3}, {4, 4, 4, 4}}; int C[N][N]; // To store result int i, j; add(A, B, C); cout << "Result matrix is " << endl; for (i = 0; i < N; i++) { for (j = 0; j < N; j++) cout << C[i][j] << " "; cout << endl; } return 0; } // This code is contributed by rathbhupendra
C
#include <stdio.h> #define N 4 // This function adds A[][] and B[][], and stores // the result in C[][] void add(int A[][N], int B[][N], int C[][N]) { int i, j; for (i = 0; i < N; i++) for (j = 0; j < N; j++) C[i][j] = A[i][j] + B[i][j]; } int main() { int A[N][N] = { {1, 1, 1, 1}, {2, 2, 2, 2}, {3, 3, 3, 3}, {4, 4, 4, 4}}; int B[N][N] = { {1, 1, 1, 1}, {2, 2, 2, 2}, {3, 3, 3, 3}, {4, 4, 4, 4}}; int C[N][N]; // To store result int i, j; add(A, B, C); printf("Result matrix is \n"); for (i = 0; i < N; i++) { for (j = 0; j < N; j++) printf("%d ", C[i][j]); printf("\n"); } return 0; }
Java
// Java program for addition // of two matrices class GFG { static final int N = 4; // This function adds A[][] and B[][], and stores // the result in C[][] static void add(int A[][], int B[][], int C[][]) { int i, j; for (i = 0; i < N; i++) for (j = 0; j < N; j++) C[i][j] = A[i][j] + B[i][j]; } // Driver code public static void main (String[] args) { int A[][] = { {1, 1, 1, 1}, {2, 2, 2, 2}, {3, 3, 3, 3}, {4, 4, 4, 4}}; int B[][] = { {1, 1, 1, 1}, {2, 2, 2, 2}, {3, 3, 3, 3}, {4, 4, 4, 4}}; // To store result int C[][] = new int[N][N]; int i, j; add(A, B, C); System.out.print("Result matrix is \n"); for (i = 0; i < N; i++) { for (j = 0; j < N; j++) System.out.print(C[i][j] + " "); System.out.print("\n"); } } } // This code is contributed by Anant Agarwal.
Python3
# Python3 program for addition # of two matrices N = 4 # This function adds A[][] # and B[][], and stores # the result in C[][] def add(A,B,C): for i in range(N): for j in range(N): C[i][j] = A[i][j] + B[i][j] # driver code A = [ [1, 1, 1, 1], [2, 2, 2, 2], [3, 3, 3, 3], [4, 4, 4, 4]] B= [ [1, 1, 1, 1], [2, 2, 2, 2], [3, 3, 3, 3], [4, 4, 4, 4]] C=A[:][:] # To store result add(A, B, C) print("Result matrix is") for i in range(N): for j in range(N): print(C[i][j], " ", end='') print() # This code is contributed # by Anant Agarwal.
C#
// C# program for addition // of two matrices using System; class GFG { static int N = 4; // This function adds A[][] and B[][], and stores // the result in C[][] static void add(int[,] A, int [,]B, int [,]C) { int i, j; for (i = 0; i < N; i++) for (j = 0; j < N; j++) C[i,j] = A[i,j] + B[i,j]; } // Driver code public static void Main () { int [,]A = { {1, 1, 1, 1}, {2, 2, 2, 2}, {3, 3, 3, 3}, {4, 4, 4, 4}}; int [,]B = { {1, 1, 1, 1}, {2, 2, 2, 2}, {3, 3, 3, 3}, {4, 4, 4, 4}}; // To store result int [,]C = new int[N,N]; int i, j; add(A, B, C); Console.WriteLine("Result matrix is "); for (i = 0; i < N; i++) { for (j = 0; j < N; j++) Console.Write(C[i,j] + " "); Console.WriteLine(); } } } // This code is contributed by vt_m.
PHP
<?php // This function adds A[][] and // B[][], and stores the result in C[][] function add(&$A, &$B, &$C) { $N = 4; for ($i = 0; $i < $N; $i++) for ($j = 0; $j < $N; $j++) $C[$i][$j] = $A[$i][$j] + $B[$i][$j]; } // Driver code $A = array(array(1, 1, 1, 1), array(2, 2, 2, 2), array(3, 3, 3, 3), array(4, 4, 4, 4)); $B = array(array(1, 1, 1, 1), array(2, 2, 2, 2), array(3, 3, 3, 3), array(4, 4, 4, 4)); $N = 4; add($A, $B, $C); echo "Result matrix is \n"; for ($i = 0; $i < $N; $i++) { for ($j = 0; $j < $N; $j++) { echo $C[$i][$j]; echo " "; } echo "\n" ; } // This code is contributed // by Shivi_Aggarwal ?>
Javascript
<script> // Javascript program for addition // of two matrices let N = 4; // This function adds A[][] and B[][], and stores // the result in C[][] function add(A, B, C) { let i, j; for (i = 0; i < N; i++) for (j = 0; j < N; j++) C[i][j] = A[i][j] + B[i][j]; } // Driver code let A = [ [1, 1, 1, 1], [2, 2, 2, 2], [3, 3, 3, 3], [4, 4, 4, 4]]; let B = [ [1, 1, 1, 1], [2, 2, 2, 2], [3, 3, 3, 3], [4, 4, 4, 4]]; // To store result let C = new Array(N); for (let k = 0; k < N; k++) C[k] = new Array(N); let i, j; add(A, B, C); document.write("Result matrix is <br>"); for (i = 0; i < N; i++) { for (j = 0; j < N; j++) document.write(C[i][j] + " "); document.write("<br>"); } </script>
Producción:
Result matrix is 2 2 2 2 4 4 4 4 6 6 6 6 8 8 8 8
El programa se puede ampliar para arrays rectangulares. La siguiente publicación puede ser útil para extender este programa.
¿Cómo pasar una array 2D como parámetro en C?
Complejidad temporal: O(n 2 ).
Espacio auxiliar: O(n 2 ). ya que se ha tomado n 2 espacio adicional para almacenar resultados
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA