How I can make this matrix

1 Ansicht (letzte 30 Tage)
Sourasis Chattopadhyay
Sourasis Chattopadhyay am 29 Jul. 2021
A=[ 1 1 1 1 0 0 0 0 0 0; 1 0 0 0 1 1 1 0 0 0; 0 1 0 0 1 0 0 1 1 0; 0 0 1 0 0 1 0 1 0 1; 0 0 0 1 0 0 1 0 1 1] How I can make this matrix in a single command.
  1 Kommentar
Monika Jaskolka
Monika Jaskolka am 29 Jul. 2021
You already have it in a single command.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Shravan Kumar Vankaramoni
Shravan Kumar Vankaramoni am 2 Aug. 2021
Hi,
The given matrix has equal number of ones in each row or sum of elements in each row is same. If you are looking for such a matrix, it cannot be done in a single command. Refer the code below.
x = [1 0 0 1 1]; %x
n = numel(x); %how many x?
arow = x(randperm(n));
shiftvals = randperm(n) - 1;
p = zeros(n, n);
for K = 1 : n
p(K,:) = circshift(arow, [0 shiftvals(K)]);
end

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by