I'm currently working on a project which has numbers assigned to each letter and i'm trying to create an array of each letter with its corresponding number below it so that when i try sorting the numbers from highest to lowest the letters get arranged as well but it's not working out for me here is my code
% code
clc
clear
n=input('please enter the number of mud types you have ');
for i=1:n
x(i)=input('please enter the name of the mud in the order you want ','s');
end
for j=1:n
y(j)=input('please enter the number of the mud in the order you want ');
end
A=[x;y]

1 个评论

Jan
Jan 2017-3-17
编辑:Jan 2017-3-17
What is your question? Assigning strings to "x(i)" must fail, because strings are vectors of type char, while x(i) is a scalar.

请先登录,再进行评论。

 采纳的回答

Jan
Jan 2017-3-17
Using a cell string would allow to names with more than 1 character also.
n = input('please enter the number of mud types you have ');
Str = cell(1, n); % Pre-allocate!!!
y = zeros(1, n); % Pre-allocate!!!
for k = 1:n
Str{k} = input('please enter the name of the mud in the order you want ','s');
end
for k = 1:n
y(k) = input('please enter the number of the mud in the order you want ');
end
[ySorted, index] = sort(y, 'ascending');
StrSorted = Str(index);

更多回答(0 个)

类别

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

标签

Community Treasure Hunt

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

Start Hunting!

Translated by