Is there a way to get an 8 x 1 matrix instead of 8 x 3 using dec2bin or any other?
6 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
sawasawa
el 27 de Feb. de 2021
Comentada: Walter Roberson
el 27 de Feb. de 2021
dec2bin (2 ^ n-1: -1: 0) - '0'
2 comentarios
Image Analyst
el 27 de Feb. de 2021
Editada: Image Analyst
el 27 de Feb. de 2021
Give an example using some specific value of n and show what you got and what you want to get.
Respuesta aceptada
Walter Roberson
el 27 de Feb. de 2021
string(dec2bin (2 ^ n-1: -1: 0))
This will be considered an array. The entries will be string objects such as "011". The entries will not be numeric.
1 comentario
Walter Roberson
el 27 de Feb. de 2021
Perhaps you want
n=3
b = (dec2bin (2 ^ n-1: -1: 0) - '0')*10.^(n-1:-1:0).'
Note that if you do this, then the only way to get the leading zeros is to format it as text again.
Más respuestas (1)
Jan
el 27 de Feb. de 2021
Editada: Jan
el 27 de Feb. de 2021
If you want 000 as output, remember, that this is not a valid decimal value. If you need the zeros for any reason, you have to stay at the char representation. Simply omit the -'0' part:
n = 3;
b = dec2bin(2 ^ n-1:-1:0)
The cannot be a 8x1 matrix.
0 comentarios
Ver también
Categorías
Más información sobre Startup and Shutdown en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!