Effacer les filtres
Effacer les filtres

Creating a diagonal matrix

3 vues (au cours des 30 derniers jours)
Gratitude Kim
Gratitude Kim le 1 Août 2017
Hi, I have written such codes.
Col=4;
Row=3
A1=zeros(Row,Col);
n = size(A1,1);
A1([1:n+1:end,n+1:n+1:end]) = 1
Output:
A1 =
1 1 0 0
0 1 1 0
0 0 1 1
I obtained output A1. Appreciate if you are able to help me to modify the code so it can become [1 1 1 0; 0 1 1 1]. Appreciate your kind assistance.
  1 commentaire
Guillaume
Guillaume le 1 Août 2017
It's unclear what you're asking. Wouldn't
A1 = [1 1 1 0; 0 1 1 1]
answer your question?
Note that your code makes a 3x4 matrix whereas you're now asking for a 2x4 matrix.

Connectez-vous pour commenter.

Réponses (2)

KSSV
KSSV le 1 Août 2017
A1(3:end,:) = []

Andrei Bobrov
Andrei Bobrov le 5 Août 2017
t = true(2,4);
out = tril(t,2) & triu(t);

Catégories

En savoir plus sur Operating on Diagonal Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by