Binary string to character conversion

How can i assign 00 to -3d, 01 to -d, 11 to +d, 10 to +3d if i have a binary string x = char('0' + (rand(1, 1000) < 0.5))?

 采纳的回答

x = char('0' + (rand(1, 1000) < 0.5))
a={'-3d' '-d' '+d' '+3d'}
idx=bin2dec(reshape(x,2,[])')+1
out=a(idx)
If you want to join them
out=strjoin(a(idx),'')

4 个评论

I am new to Matlab. What is idx mean? There is idx = 231412344.....etc
There is an error;
a={'-3d' '-d' '+3d' '+d'}
You have
00 corresponds to index idx=1
01 corresponds to index idx=2
10 corresponds to index idx=3
11 corresponds to index idx=4
ahh yes, cheers mate! and if i want to change d to 1 how can i do it?

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Characters and Strings 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by