create a binary sequence that consisting of m zeros and n ones in any order.

6 vues (au cours des 30 derniers jours)
Bear
Bear le 23 Nov 2014
Commenté : Bear le 27 Nov 2014
I need help to program a matlab code to generate a binary sequence that contains m zeros and n ones. I created a N lengths of zero, x1=zeros(1,N), but how to add n ones into the sequence of zeros.

Réponse acceptée

Star Strider
Star Strider le 23 Nov 2014
The easiest way:
x1 = [zeros(1,N) ones(1,M)];
  1 commentaire
Bear
Bear le 25 Nov 2014
Thx alot and it works well, but I forgot to say the zeros and ones have to be placed in random order. Do you have any ideas how to do this.

Connectez-vous pour commenter.

Plus de réponses (3)

Roger Stafford
Roger Stafford le 23 Nov 2014
Or perhaps you want them in random order:
x = zeros(1,m+n);
p = randperm(1:m+n,n);
x(p) = ones(1,n);
  4 commentaires
Azzi Abdelmalek
Azzi Abdelmalek le 25 Nov 2014
There is an error in
p = randperm(1:m+n,n);
Roger Stafford
Roger Stafford le 26 Nov 2014
Yes, it should have been
p = randperm(m+n,n);

Connectez-vous pour commenter.


Azzi Abdelmalek
Azzi Abdelmalek le 23 Nov 2014
Modifié(e) : Azzi Abdelmalek le 23 Nov 2014
x1=[zeros(1,5) ones(1,4)]
%or
N=5;
n=4;
X1=1:n+N>N
  4 commentaires
Bear
Bear le 25 Nov 2014
Thank you. That was what I asked for.
Bear
Bear le 27 Nov 2014
There is a question on my further programming this code, For example, m=n=2. then the number of combinations of the binary sequence is 6,nchoosek(4,2). My code was fine to output the 6 combinations. However, the combinations are not unique. one or two combinations show twice. Here is the detail of question, you may want to click and take a look. generate the binary sequence Again, thank you for the great helps.

Connectez-vous pour commenter.


Jan
Jan le 23 Nov 2014
And another apporach:
x1 = zeros(1, n+m);
x1(n+1:n+m) = 1;

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by