Given a number, n, create an n x n sized matrix with concentric squares of 1s from the outside in. There should be a gap between each square (represented by 0s).

If n is even, the centre of the matrix should be a 2 x 2 square of 0s or 1s, if it is odd it should be a 1 x 1 square.

The function should return the square matrix, S, and the number of squares, Sn, (in some cases this may only be one).

e.g. n = 7
  1 1 1 1 1 1 1
  1 0 0 0 0 0 1
  1 0 1 1 1 0 1
  1 0 1 0 1 0 1
  1 0 1 1 1 0 1
  1 0 0 0 0 0 1
  1 1 1 1 1 1 1

Solution Stats

66 Solutions

17 Solvers

Last Solution submitted on May 09, 2026

Last 200 Solutions

Problem Comments

Solution Comments

Show comments
Loading...

Problem Recent Solvers17

Suggested Problems

More from this Author1

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!