multipying character in array number
1 view (last 30 days)
Show older comments
best16 programmer
on 21 Nov 2016
Edited: Philip Borghesani
on 21 Nov 2016
i want to create a character array for example if a.*[1 1 1 1] we get [a a a a] thank you.
0 Comments
Accepted Answer
More Answers (2)
Star Strider
on 21 Nov 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 Comments
James Tursa
on 21 Nov 2016
To generate a random vector with the values either +1 or -1, see this link:
Philip Borghesani
on 21 Nov 2016
Edited: Philip Borghesani
on 21 Nov 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]])'
0 Comments
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!