# Boundary elements of a Matrix

Printing Boundary Elements of a Matrix.

Examples:

```Input : 1 2 3 4
5 6 7 8
1 2 3 4
5 6 7 8
Output : 1 2 3 4
5     8
1     4
5 6 7 8
```

The idea is really simple. We traverse given matrix. For every element being traversed, we print it if it is a corner element. If it is not a corner element, then we print space character.

## C++

 `// C++ program to print boundary element of ` `// matrix. ` `#include ` `using` `namespace` `std; ` ` `  `const` `int` `MAX = 100; ` ` `  `void` `printBoundary(``int` `a[][MAX], ``int` `m, ``int` `n) ` `{ ` `    ``for` `(``int` `i = 0; i < m; i++) { ` `        ``for` `(``int` `j = 0; j < n; j++) { ` `            ``if` `(i == 0 || j == 0 || i == n - 1 || j == n - 1) ` `                ``cout << a[i][j] << ``" "``; ` `            ``else` `                ``cout << ``" "` `                     ``<< ``" "``; ` `        ``} ` `        ``cout << ````" "````; ` `    ``} ` `} ` ` `  `// Driver code ` `int` `main() ` `{ ` `    ``int` `a[4][MAX] = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 1, 2, 3, 4 }, { 5, 6, 7, 8 } }; ` `    ``printBoundary(a, 4, 4); ` `    ``return` `0; ` `} `

/div>

## Java

 `// JAVA Code for Boundary elements of a Matrix ` `class` `GFG { ` ` `  `    ``public` `static` `void` `printBoundary(``int` `a[][], ``int` `m, ` `                                     ``int` `n) ` `    ``{ ` `        ``for` `(``int` `i = ``0``; i < m; i++) { ` `            ``for` `(``int` `j = ``0``; j < n; j++) { ` `                ``if` `(i == ``0``) ` `                    ``System.out.print(a[i][j] + ``" "``); ` `                ``else` `if` `(i == m - ``1``) ` `                    ``System.out.print(a[i][j] + ``" "``); ` `                ``else` `if` `(j == ``0``) ` `                    ``System.out.print(a[i][j] + ``" "``); ` `                ``else` `if` `(j == n - ``1``) ` `                    ``System.out.print(a[i][j] + ``" "``); ` `                ``else` `                    ``System.out.print(``"  "``); ` `            ``} ` `            ``System.out.println(``""``); ` `        ``} ` `    ``} ` ` `  `    ``/* Driver program to test above function */` `    ``public` `static` `void` `main(String[] args) ` `    ``{ ` `        ``int` `a[][] = { { ``1``, ``2``, ``3``, ``4` `}, { ``5``, ``6``, ``7``, ``8` `}, { ``1``, ``2``, ``3``, ``4` `}, { ``5``, ``6``, ``7``, ``8` `} }; ` ` `  `        ``printBoundary(a, ``4``, ``4``); ` `    ``} ` `} ` `// This code is contributed by Arnav Kr. Mandal. `

## Python

 `# Python program to print boundary element ` `# of matrix. ` ` `  `MAX` `=` `100` `  `  `def` `printBoundary(a, m, n): ` `    ``for` `i ``in` `range``(m): ` `        ``for` `j ``in` `range``(n): ` `            ``if` `(i ``=``=` `0``): ` `                ``print` `a[i][j], ` `            ``elif` `(i ``=``=` `m``-``1``): ` `                ``print` `a[i][j], ` `            ``elif` `(j ``=``=` `0``): ` `                ``print` `a[i][j], ` `            ``elif` `(j ``=``=` `n``-``1``): ` `                ``print` `a[i][j], ` `            ``else``: ` `                ``print` `" "``, ` `        ``print` `         `  `# Driver code ` `a ``=` `[ [ ``1``, ``2``, ``3``, ``4` `], [ ``5``, ``6``, ``7``, ``8` `],  ` `    ``[ ``1``, ``2``, ``3``, ``4` `], [ ``5``, ``6``, ``7``, ``8` `] ] ` `printBoundary(a, ``4``, ``4``) ` ` `  `# This code is contributed by Sachin Bisht `

## C#

 `// C# Code for Boundary ` `// elements of a Matrix ` `using` `System; ` ` `  `class` `GFG { ` ` `  `    ``public` `static` `void` `printBoundary(``int``[, ] a, ` `                                     ``int` `m, ` `                                     ``int` `n) ` `    ``{ ` `        ``for` `(``int` `i = 0; i < m; i++) { ` `            ``for` `(``int` `j = 0; j < n; j++) { ` `                ``if` `(i == 0) ` `                    ``Console.Write(a[i, j] + ``" "``); ` `                ``else` `if` `(i == m - 1) ` `                    ``Console.Write(a[i, j] + ``" "``); ` `                ``else` `if` `(j == 0) ` `                    ``Console.Write(a[i, j] + ``" "``); ` `                ``else` `if` `(j == n - 1) ` `                    ``Console.Write(a[i, j] + ``" "``); ` `                ``else` `                    ``Console.Write(``"  "``); ` `            ``} ` `            ``Console.WriteLine(``" "``); ` `        ``} ` `    ``} ` ` `  `    ``// Driver Code ` `    ``static` `public` `void` `Main() ` `    ``{ ` `        ``int``[, ] a = { { 1, 2, 3, 4 }, ` `                      ``{ 5, 6, 7, 8 }, ` `                      ``{ 1, 2, 3, 4 }, ` `                      ``{ 5, 6, 7, 8 } }; ` ` `  `        ``printBoundary(a, 4, 4); ` `    ``} ` `} ` ` `  `// This code is contributed by ajit `

## PHP

 ` `

Output:

```1 2 3 4
5     8
1     4
5 6 7 8
```

Finding sum of boundary elements

Examples:

```Input : 1 2 3 4
5 6 7 8
1 2 3 4
5 6 7 8
Output : 54
```

## C++

 `// C++ program to find sum of boundary elements ` `// of matrix. ` `#include ` `using` `namespace` `std; ` ` `  `const` `int` `MAX = 100; ` ` `  `int` `getBoundarySum(``int` `a[][MAX], ``int` `m, ``int` `n) ` `{ ` `    ``long` `long` `int` `sum = 0; ` `    ``for` `(``int` `i = 0; i < m; i++) { ` `        ``for` `(``int` `j = 0; j < n; j++) { ` `            ``if` `(i == 0) ` `                ``sum += a[i][j]; ` `            ``else` `if` `(i == m - 1) ` `                ``sum += a[i][j]; ` `            ``else` `if` `(j == 0) ` `                ``sum += a[i][j]; ` `            ``else` `if` `(j == n - 1) ` `                ``sum += a[i][j]; ` `        ``} ` `    ``} ` `    ``return` `sum; ` `} ` ` `  `// Driver code ` `int` `main() ` `{ ` `    ``int` `a[][MAX] = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 1, 2, 3, 4 }, { 5, 6, 7, 8 } }; ` `    ``long` `long` `int` `sum = getBoundarySum(a, 4, 4); ` `    ``cout << ``"Sum of boundary elements is "` `<< sum; ` `    ``return` `0; ` `} `

## Java

 `// JAVA Code for Finding sum of boundary elements ` `class` `GFG { ` ` `  `    ``public` `static` `long` `getBoundarySum(``int` `a[][], ``int` `m, ` `                                      ``int` `n) ` `    ``{ ` `        ``long` `sum = ``0``; ` `        ``for` `(``int` `i = ``0``; i < m; i++) { ` `            ``for` `(``int` `j = ``0``; j < n; j++) { ` `                ``if` `(i == ``0``) ` `                    ``sum += a[i][j]; ` `                ``else` `if` `(i == m - ``1``) ` `                    ``sum += a[i][j]; ` `                ``else` `if` `(j == ``0``) ` `                    ``sum += a[i][j]; ` `                ``else` `if` `(j == n - ``1``) ` `                    ``sum += a[i][j]; ` `            ``} ` `        ``} ` `        ``return` `sum; ` `    ``} ` ` `  `    ``/* Driver program to test above function */` `    ``public` `static` `void` `main(String[] args) ` `    ``{ ` `        ``int` `a[][] = { { ``1``, ``2``, ``3``, ``4` `}, { ``5``, ``6``, ``7``, ``8` `}, { ``1``, ``2``, ``3``, ``4` `}, { ``5``, ``6``, ``7``, ``8` `} }; ` `        ``long` `sum = getBoundarySum(a, ``4``, ``4``); ` `        ``System.out.println(``"Sum of boundary elements"` `                           ``+ ``" is "` `+ sum); ` `    ``} ` `} ` `// This code is contributed by Arnav Kr. Mandal. `

## Python

 `# Python program to print boundary element  ` `# of matrix. ` ` `  `MAX` `=` `100` `  `  `def` `printBoundary(a, m, n): ` `    ``sum` `=` `0` `    ``for` `i ``in` `range``(m): ` `        ``for` `j ``in` `range``(n): ` `            ``if` `(i ``=``=` `0``): ` `                ``sum` `+``=` `a[i][j] ` `            ``elif` `(i ``=``=` `m``-``1``): ` `                ``sum` `+``=` `a[i][j] ` `            ``elif` `(j ``=``=` `0``): ` `                ``sum` `+``=` `a[i][j] ` `            ``elif` `(j ``=``=` `n``-``1``): ` `                ``sum` `+``=` `a[i][j] ` `    ``return` `sum` `     `  `# Driver code ` `a ``=` `[ [ ``1``, ``2``, ``3``, ``4` `], [ ``5``, ``6``, ``7``, ``8` `], ` `    ``[ ``1``, ``2``, ``3``, ``4` `], [ ``5``, ``6``, ``7``, ``8` `] ] ` `sum` `=` `printBoundary(a, ``4``, ``4``) ` `print` `"Sum of boundary elements is"``, ``sum` ` `  `# This code is contributed by Sachin Bisht `

## C#

 `// C# Code for Finding sum ` `// of boundary elements ` `using` `System; ` ` `  `class` `GFG { ` `    ``public` `static` `long` `getBoundarySum(``int``[, ] a, ` `                                      ``int` `m, ``int` `n) ` `    ``{ ` `        ``long` `sum = 0; ` `        ``for` `(``int` `i = 0; i < m; i++) { ` `            ``for` `(``int` `j = 0; j < n; j++) { ` `                ``if` `(i == 0) ` `                    ``sum += a[i, j]; ` `                ``else` `if` `(i == m - 1) ` `                    ``sum += a[i, j]; ` `                ``else` `if` `(j == 0) ` `                    ``sum += a[i, j]; ` `                ``else` `if` `(j == n - 1) ` `                    ``sum += a[i, j]; ` `            ``} ` `        ``} ` `        ``return` `sum; ` `    ``} ` ` `  `    ``// Driver Code ` `    ``static` `public` `void` `Main() ` `    ``{ ` `        ``int``[, ] a = { { 1, 2, 3, 4 }, ` `                      ``{ 5, 6, 7, 8 }, ` `                      ``{ 1, 2, 3, 4 }, ` `                      ``{ 5, 6, 7, 8 } }; ` `        ``long` `sum = getBoundarySum(a, 4, 4); ` `        ``Console.WriteLine(``"Sum of boundary"` `                          ``+ ``" elements is "` `+ sum); ` `    ``} ` `} ` ` `  `// This code is contributed by ajit `

## PHP

 ` `

Output:

```Sum of boundary elements is 54
```

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.

## tags:

Matrix School Programming Matrix