MATLAB Answers

Translated by

このページのコンテンツは英語から自動翻訳されています。自動翻訳をオフにする場合は「<a class="turn_off_mt" href="#">ここ</a>」をクリックしてください。

0

multipying character in array number

best16 programmer さんによって質問されました 2016 年 11 月 21 日
最新アクティビティ Philip Borghesani さんによって 編集されました 2016 年 11 月 21 日
i want to create a character array for example if a.*[1 1 1 1] we get [a a a a] thank you.

  0 件のコメント

サインイン to comment.

3 件の回答

回答者: Azzi Abdelmalek
2016 年 11 月 21 日
 採用された回答

repmat({'a'} ,1,5)

  1 件のコメント

best16 programmer 2016 年 11 月 21 日
thank you. but what if we have a.*[1 -1 1 -1 -1] how can we get [a -a a -a -a]

サインイン to comment.


回答者: Star Strider
2016 年 11 月 21 日

‘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 件のコメント

best16 programmer 2016 年 11 月 21 日
thank you ,it works.how we can generate the vector v in a random way.
Star Strider
2016 年 11 月 21 日
My pleasure.
Note that it also allows for ‘0’ entries in ‘v’.
James Tursa
2016 年 11 月 21 日

サインイン to comment.


回答者: Philip Borghesani 2016 年 11 月 21 日
編集済み: Philip Borghesani 2016 年 11 月 21 日

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 件のコメント

サインイン to comment.



Translated by