could anyone help me to solve the following issue

2 visualizaciones (últimos 30 días)
Prabha Kumaresan
Prabha Kumaresan el 5 de Mzo. de 2018
Comentada: Prabha Kumaresan el 5 de Mzo. de 2018
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.

Respuesta aceptada

Rik
Rik el 5 de Mzo. de 2018
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

Más respuestas (0)

Categorías

Más información sobre Performance and Memory en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by