multipying character in array number
Mostrar comentarios más antiguos
i want to create a character array for example if a.*[1 1 1 1] we get [a a a a] thank you.
Respuesta aceptada
Más respuestas (2)
Star Strider
el 21 de Nov. de 2016
‘what if we have a.*[1 -1 1 -1 -1] how can we get [a -a a -a -a]’
That requires a loop, but it works:
v = [1 -1 1 -1 -1];
a_vec = [];
for k1 = 1:length(v)
if v(k1) > 0
a_vec = [a_vec ' a '];
elseif v(k1) < 0
a_vec = [a_vec '-a '];
elseif v(k1 == 0)
a_vec = [a_vec ' 0 '];
end
end
a_vec =
a -a a -a -a
3 comentarios
best16 programmer
el 21 de Nov. de 2016
Editada: best16 programmer
el 21 de Nov. de 2016
Star Strider
el 21 de Nov. de 2016
My pleasure.
Note that it also allows for ‘0’ entries in ‘v’.
James Tursa
el 21 de Nov. de 2016
To generate a random vector with the values either +1 or -1, see this link:
Philip Borghesani
el 21 de Nov. de 2016
Editada: Philip Borghesani
el 21 de Nov. de 2016
Did you really want a character array?
>> syms a
>> b=a.*[1 -1 1 -1 -1]
b =
[ a, -a, a, -a, -a]
To get a character array you can do
>> char(b)
ans =
'matrix([[a, -a, a, -a, -a]])'
Categorías
Más información sobre Logical en Centro de ayuda y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!