Créer un vecteur en matlab

etudianteetudiante Messages postés 26 Statut Membre -  
etudianteetudiante Messages postés 26 Statut Membre -
Bonjour,

je veux créer un vecteur qui contient 4 uns et 21 zeros
l'emplacement de zeros est aléatoire
j'ai essayé avec la fonction randint mais l'apparaition des zeros et des uns n'est pas comme je veux
comment faire svp?
merci d'avance
cordialement

1 réponse

jisisv Messages postés 3678 Statut Modérateur 934
 
Essaye de t'inspirer de:
cnt = 4 ;
V = zeros(1,25);
S = ones(25,1);

sum = 0;
while ( sum < cnt )
    j =floor( 1 + 25  * rand(1));
#  disp(j);
    V(j) = 1;
    sum = V * S;
endwhile
disp(V);

Testé sous GNU/Octave 4.0.1
Tu peux éventuellement remplacer S par un vecteur de pondération de ton choix.


Gates gave ^W  sold  you the windows.
GNU gave us the whole house.(Alexandrin)
0
etudianteetudiante Messages postés 26 Statut Membre
 
merci bien pour votre réponse
0