Creating a diagonal matrix

3 visualizaciones (últimos 30 días)
Gratitude Kim
Gratitude Kim el 1 de Ag. de 2017
Respondida: Andrei Bobrov el 5 de Ag. de 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 comentario
Guillaume
Guillaume el 1 de Ag. de 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.

Iniciar sesión para comentar.

Respuestas (2)

KSSV
KSSV el 1 de Ag. de 2017
A1(3:end,:) = []

Andrei Bobrov
Andrei Bobrov el 5 de Ag. de 2017
t = true(2,4);
out = tril(t,2) & triu(t);

Categorías

Más información sobre Operating on Diagonal Matrices en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by