Asking User a Question with Variables
조회 수: 6 (최근 30일)
이전 댓글 표시
Why does this not work? How do I ask the user questions involving changing variables?
댓글 수: 3
채택된 답변
JESUS DAVID ARIZA ROYETH
2019년 11월 4일
solution:
answer=inputdlg({'nodes'});
nodes=str2double(answer(1,1));
nodematrix=Inf(nodes);
A=0;
B=1;
while A<nodes
B=B+1;
A=A+1;
answer=input(['Enter resistance between ',num2str(A),' and ',num2str(B)])
end
댓글 수: 4
JESUS DAVID ARIZA ROYETH
2019년 11월 4일
something like this?
answer=inputdlg({'nodes'});
nodes=str2double(answer(1,1));
nodematrix=Inf(nodes);
A=0;
B=1;
answer=[];
while A<nodes
B=B+1;
A=A+1;
answer(end+1)=str2double(inputdlg(['Enter resistance between ',num2str(A),' and ',num2str(B)]));
end
disp(answer)
추가 답변 (2개)
Steven Lord
2019년 11월 4일
For this you could use num2str as JESUS DAVID ARIZA ROYETH posted, but I'd prefer either creating a string array to pass to the input function (if you're using a release of MATLAB that contains the string class) or using sprintf. Here's how you can use string (this requires you to use release R2017a or later to create a string using double quotes.)
A = randi([1 10]); % A scalar integer value between 1 and 10 inclusive
x = input("What positive number when squared gives " + A^2 + "? ");
if x == A
disp("Correct!")
else
disp("Incorrect, the correct answer is " + A + ".")
end
For sprintf:
k = 2;
s = sprintf('The value of %d*pi is approximately %f.', k, k*pi)
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Interactive Control and Callbacks에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!