Expanding 1D array using for loop
3 次查看(过去 30 天)
显示 更早的评论
I have the code below. What I am trying to do is accept/store an arbitrary number of positive input values (into the "values" array) using a for loop. I do not have a pre-determined amount of positive numbers, that I am going to accept, rather the goal is for the user to keep entering numbers (as prompted) until he/she enters a non-positive number. I think the crux of the problem lies with dynamically expanding the values array.
Any suggestions?
i=1;
n=input('Enter initial value: ');
values(i)=n;
for i=1:length(values)
if n>0;
n=input('Enter next value: ');
i=i+1;
else
disp('ERROR: All numbers entered must be positive!');
break;
end
end
0 个评论
采纳的回答
Star Strider
2014-9-7
This seems to work:
n = 1;
i = 0;
n=inputdlg('Enter initial value: ');
n = str2num(cell2mat(n));
while n>0;
i=i+1;
values(i) = n;
n=inputdlg('Enter next value: ');
n = str2num(cell2mat(n));
end
msgbox('ERROR: All numbers entered must be positive!');
I used the inputdlg and msgbox functions because they keep the Command Window from getting cluttered.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!