could anyone help me to solve the following issue

1 次查看(过去 30 天)
The foolowing code works fine
N_UE=10;
unused_rows=1:N_UE;
while ~isempty(unused_rows);
N_UE_rows=ceil(sqrt(randi([2,numel(unused_rows)])));
if (N_UE_rows+1)==numel(unused_rows);
N_UE_rows=numel(unused_rows);
end
rows=unused_rows(randsample(length(unused_rows),N_UE_rows));
[~,idx]=find(ismember(unused_rows,rows));
unused_rows(idx)=[];
end
But the code executes with the result such that for each run the number of rows keep on changing either to 2 or 3. could anyone tell me how to fix the number of rows for each run to be 2.

采纳的回答

Rik
Rik 2018-3-5
N_UE=10;
unused_rows=1:N_UE;
while ~isempty(unused_rows);
N_UE_rows=2;
if (N_UE_rows+1)==numel(unused_rows);
N_UE_rows=numel(unused_rows);
end
rows=unused_rows(randsample(length(unused_rows),N_UE_rows));
[~,idx]=find(ismember(unused_rows,rows));
unused_rows(idx)=[];
end

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by