Info

この質問は閉じられています。 編集または回答するには再度開いてください。

if an array like [.002 1.1103 0.665 .002]. how can i get [a b c a]?

1 回表示 (過去 30 日間)
parthasarathi ghorai
parthasarathi ghorai 2015 年 4 月 23 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
if an array like [.002 1.1103 0.665 .002]. how can i get [a b c a]? i want to print .002=a 1.1103=b .665=c .002=a. how can i get this?

回答 (3 件)

James Tursa
James Tursa 2015 年 4 月 23 日
Not sure what you want. Maybe this?
myVector = [.002 1.1103 0.665 .002];
a = myVector(1);
b = myVector(2);
c = myVector(3);
  2 件のコメント
parthasarathi ghorai
parthasarathi ghorai 2015 年 4 月 23 日
if a=.002 then how can i get .002=a?
Michael Haderlein
Michael Haderlein 2015 年 4 月 23 日
Could you please tell us what you mean? Do you want to print something on the screen or do you want to access an array? And what do you mean with "get .002=a"?

Michael Haderlein
Michael Haderlein 2015 年 4 月 23 日
Does the output need to be ".002" or is "0.002" also fine? If there must not be the leading zero, what kind of array do you have? I mean, the internal representation of ".002" is 0.002 if it's any kind of numerical value.
Also, do you always have the scheme a-b-c-a or could it also be a-b-c-d or a-b-b-b or whatever could be imagined?
Despite these unclear points, the answer could possibly just be
fprintf(1,'%1.3f=a %1.3f=b %1.3f=c %1.3f=a\n',myarray);

Thomas Koelen
Thomas Koelen 2015 年 4 月 23 日
You could make a cell that looks like this:
x =
[0.2000] 'a'
[0.3000] 'b'
[0.5000] 'c'
Then do this:
y=cell2mat(x(:,1))
y =
0.2000
0.3000
0.5000
now let's say you want to find the letter that corresponds to 0.2
index=find(y==0.2)
now you do:
x{index,2}
which gives:
ans =
a
hope this does what you desire!

タグ

タグが未入力です。

製品

Community Treasure Hunt

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

Start Hunting!

Translated by