MATLAB: Salut, j’essaie de générer un vecteur avec des zéros, puis de remplacer 20%, 30%, 40% des bits par 40. Est-ce possible

le vecteur de code est v = [0 0 0 0 0 0 0 0 0 0 0 0];
J’essaye de générer
 
v=[0 0 40 0 0 0 40 0 0 0 0]; %%these 40 is random
v=[0 40 0 40 0 0 40 0 0 0];
v=[ 40 0 40 0 0 0 40 0 40 0]
 
Tout type de suggestion serait apprécié. TIA

Meilleure réponse

  •  

    fill_with = 40;
    fillpercent = 30;
    fill_length = 12;
    fill_mask = rand(1, fill_length) * 100 <= fillpercent;
    v = zero(1, fill_length);
    v(fill_mask) = fill_with;