I have an identity matrix. I want to put a '1' on the zeros that are right infront of the main diagonal, except at the very last '1'.
Is there an easy way to do it

 Réponse acceptée

I = eye(7)
I = 7×7
1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1
r = size(I,1);
newI = diag([ones(1,r-2), 0],-1) + I
newI = 7×7
1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by