MATLAB: Could anyone help me to solve the following issue

fixing the number of rows

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.

Best Answer

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