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에서 Structures에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!