create a matrix with ones and zeros

6 views (last 30 days)
in need to create an array of 20-by-20 the first row needs to be 19 ones and 1 zero the first column is all ones the last row is is all ones from the first row first column diagnally to the last row last column needs to be filled with ones, the rest are all zero.
now I can type this all out but there must be a better way
my question is how do i create this array?

Accepted Answer

Star Strider
Star Strider on 6 Sep 2014
Edited: Star Strider on 6 Sep 2014
This looks like what you want:
a = ones(1,20);
M = diag(a);
M(1,:) = [ones(1,19) 0];
M(:,1) = a';
M(20,:) = a;
  3 Comments
Star Strider
Star Strider on 6 Sep 2014
My pleasure!
I just realised that I could have used ‘a’ in M(1:) as well:
M(1,:) = [a(1:19) 0];
Tony Montgomery
Tony Montgomery on 6 Sep 2014
okay another problem close to the first.
need to create a similar array, but instead add variables.
so for example the last row need to be 19 of variable b and 1 one. how can i do that?

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!