2016-04-13 6 views
0

platzieren, wie dies zu tun?bestimmte Anzahl nach dem Zufallsprinzip in Array in Matlab

Ich möchte eine bestimmte Anzahl platzieren, wie die Nummer 2 zufällig in ein 3x3 von Nullen array, es darum ging, ist gut, aber die Codierung immer noch nicht richtig und irgendwie Nummer 1 auch angezeigt werden.

rows = 3; 
cols = 3; 

M = zeros(rows,cols); 

p = randi(2); 

rV = randperm(rows); 
cV = randperm(cols); 


M(rV(2),cV(2))=p 

wo habe ich falsch gemacht? jeder Vorschlag

+0

'M (Randi (numel (M))) = 2'? – bla

+0

danke! das funktioniert auch .. – user6196619

Antwort

1

Sie könnten auch randi zusammen mit linearer Indizierung verwenden

m = zeros(3); 
m(randi(numel(m))) = 2; 
0

Keine Notwendigkeit - ich habe es schon gelöst!

a=[2]; 
m=zeros(3); 
m(randperm(numel(m),numel(a)))=a 
Verwandte Themen