Create a matrix of binary numbers generated by sequence
2 views (last 30 days)
Show older comments
Mohammed
on 30 Mar 2014
Commented: Muhammad Atif Ali
on 29 Oct 2021
I want to create a general matrix to create outputs of the below format...
if n=1
output=[1 0]
if n=2
output=[1 1
1 0
0 1
0 0]
if n=3
output=[1 1 1
1 1 0
1 0 1
1 0 0
0 1 1
0 1 0
0 0 1
0 0 0]
for any number of n; the output matrix will be of the order of [2^n X n]
0 Comments
Accepted Answer
the cyclist
on 30 Mar 2014
output = dec2bin(2^n-1:-1:0)-'0'
9 Comments
Sodamn Insane
on 27 Mar 2019
The -'0' converts the output of dec2bin from a character array with each combination as a row element to a matrix with the type of double.
Muhammad Atif Ali
on 29 Oct 2021
this - '0' was the whole trick. I wasted more than 2 hours trying to figure this out.
More Answers (2)
Azzi Abdelmalek
on 30 Mar 2014
Edited: Azzi Abdelmalek
on 30 Mar 2014
n=3;
s=0:1;
idx=rem(nchoosek(0:2^n-1,n),2)+1;
out=flipud(unique(s(idx),'rows'))
görkem tatar
on 18 Jun 2021
y =dec2bin(x)
x = 'dec variable'
y = 'convertion of the dec variable to bin'
0 Comments
See Also
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!