数组元素:
4 3 2 1 5
a[1]=4
a[2]=3
a[3]=2
a[4]=1
a[5]=5
对于数组索引1对应于字符串名称Basavaraj,
索引2对应于字符串名称Chandru,
索引3对应于字符串名称Natesh,
索引4对应于字符串名称Vijay,
索引5对应于字符串名称Raghu,
因此,如果数组值4的索引为1,则必须显示字符串Basavaraj,
3来自索引2意味着应该显示字符串Chandru,
2来自索引3意味着应该显示字符串Natesh,
1来自索引4意味着应该显示字符串Vijay,
5来自索引5意味着应该显示字符串Raghu,
输入数组值的示例:
4
4
4
3
3
3
1
1
1
2
2
2
5
5
5
输出应该符合上面的数组元素:
Basavaraj
Basavaraj
Basavaraj
Chandru
Chandru
Chandru
Vijay
Vijay
Vijay
Natesh
Natesh
Natesh
Raghu
Raghu
Raghu
输入数组值的示例:
5
5
5
1
1
1
2
2
2
4
4
4
3
3
3
输出应该符合上面的数组元素:
Raghu
Raghu
Raghu
Vijay
Vijay
Vijay
Natesh
Natesh
Natesh
Basavraj
Basavraj
Basavraj
Chandru
Chandru
Chandru
仅取5个值,即1 2 3 4 5 如何在matlab中完成?
替代解释: 请考虑以下情况:
数组:1 5 4 2 3
IND [1] = 1&--- GT; Basavraj
IND [2] = 5 ---> Chandru
IND [3] = 4 ---> Natesh
IND [4] = 2 --->维杰
IND [5] = 3 ---> Raghu
输入数组示例:
2
2
4
4
5
5
1
1
3
3
输出:
Vijay
Vijay
Natesh
Natesh
Chandru
Chandru
Basavraj
Basavraj
Raghu
Raghu
答案 0 :(得分:1)
你可以用......像这样:
% a is a cell array defined with {} containing each name in one element.
a={'Basavaraj', 'Chandru' ,'Natesh','Vijay','Raghu'};
%b is an array which has integer values from 1 to 5 (10 times) if you add more values in a b still generates random numbers for all elements (because of numel(a))
b= round((numel(a)-1)*rand(10,1)+1);
% this returns for each integer in b the according name from a (be careful to use {} to return the value, normal brackets won't work here
a{b}
我使用rand
来获取b
中的随机顺序显然你应该使用你问题中所述的向量。
修改1 嘿,不确定这是不是你问的(评论中):
List_Of_Names={'Basavaraj', 'Chandru' ,'Natesh','Vijay','Raghu'};
input1 =[1 5 4 2 3];
tmp_List_Names = List_Of_Names(input1);
input2= round((numel(List_Of_Names)-1)*rand(1,10)+1);
result =tmp_List_Names(input2);
display(input2)
display(result)
此处List_Of_Names
是您的姓名列表。
input1
是第一个定义新订单的输入(idx(1) - > 5),不确定这是否是您要求的。
tmp_List_Names
是一个临时列表,其中包含新订单中的名称
input2
是定义输出的长整数列表
result
是输出。最后,我使用display()
在命令窗口中显示input2
和result
。看起来像这样:
input2 =
3 1 5 5 3 3 2 5 2 1
result =
'Vijay' 'Basavaraj' 'Natesh' 'Natesh' 'Vijay' 'Vijay' 'Raghu' 'Natesh' 'Raghu' 'Basavaraj'
如果您希望它们位于列中而不是行中您可以转置input2
和(List_Of_Names
或result
)。可以通过添加'
:
result=result';