fundamental principle of multiplication
1 view (last 30 days)
Show older comments
i have 4 numbers as a row vector, p=[ 1 -1 j -j ];
Now, total number of different 4 digit numbers formed using elements of "p" is 4^4=256
Thus i need a 256*4 matrix.
How to create such a 256*4 matrix ?
2 Comments
Image Analyst
on 12 Oct 2013
What is a 4 digit number? Can you give an example of the first 6 rows of what you want at the result?
Accepted Answer
More Answers (2)
Sean de Wolski
on 11 Oct 2013
[xx,yy,zz,qq] = ndgrid('1234');
V = [xx(:) yy(:) xx(:) qq(:)]
Cedric
on 12 Oct 2013
Edited: Cedric
on 12 Oct 2013
I guess that the following would work. I didn't think too much about it though and there must be a simpler or even trivial solution..
>> ID = mod(floor((0:255).' * 2.^[0:-2:-6]), 4) + 1 ;
>> p(ID)
Check
>> size(unique(ID, 'rows'))
ans =
256 4
2 Comments
Cedric
on 12 Oct 2013
Edited: Cedric
on 12 Oct 2013
Just in case nobody proposes a better solution, the way this one works is comparable to the way you build tables of binary codes.. you build the first column as 01010101.., the second as 0011001100.., the third as 000011110000.., and so on. My solution does the same in base 4.
See Also
Categories
Find more on Matrix Indexing 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!