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

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 9 Aug. 2022

0 Stimmen

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

Weitere Antworten (0)

Kategorien

Community Treasure Hunt

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

Start Hunting!

Translated by