How to assign different values to different variables input by the user?

1 次查看(过去 30 天)
prompt = 'Enter data: ';
title = 'Data input';
dlg_ans = inputdlg(prompt,title,[1 100]);
data = str2num(dlg_ans{:});
In the above program, the user is allowed to enter as many values as he wish. So how can i assign these different values to different variables automatically as they enter each value?
  1 个评论
DIJESH
DIJESH 2014-5-26
编辑:DIJESH 2014-5-26
if i go by the code -
answer1 = data(1)
answer2 = data(2)
this will read each values and assign it to the respective variables but since i do not know the number values entered by the user, how would i manage it to assign it to different variables?

请先登录,再进行评论。

采纳的回答

Mischa Kim
Mischa Kim 2014-5-26
编辑:Mischa Kim 2014-5-26
Dijesh, you could use the eval command:
prompt = 'Enter data: ';
title = 'Data input';
dlg_ans = inputdlg(prompt,title,[1 100]);
data = str2num(dlg_ans{:});
for ii=1:numel(data)
eval(sprintf('data%d = %f\n', ii, data(ii)));
end
However, as pointed out in one of your other questions I'd recommend against this approach. See this answer for reference.
  2 个评论
DIJESH
DIJESH 2014-5-26
May I know why do u suggest against using the above approach? If there is a way why can't we use it?

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Data Import and Analysis 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by