i want write script first asks inputs:
a = input('enter square matrix a: ');
and if it's not square matrix, display error , ask again entering matrix a
and based on a's dimension, program in command line asks next following inputs: (suppose a's dimension 3)
enter 3x1-matrix b: enter 1x3-matrix c:
then, ask initial values x(0)'s, 3 x(0)'s in our situation:
the initial values: x1(0): x2(0): x3(0):
(note: number of x(0)'s depends on a's dimension. can stores intial values in variables x1,x2 , x3)
how can code in matlab?
thanks in advance!
=======================
my try:
while(true) = input('enter square matrix a: '); sizea = size(a); if sizea(1) == sizea(2) break; end display('error: have enter square matrix!') end while(true) b = input('enter ' + sizea(1) + 'x1-matrix b: '); sizeb = size(a); if sizeb(1) == sizea(1) && sizeb(2) == 1 break; end display('error: have enter ' + sizea(1) + 'x1-matrix!') end while(true) c = input('enter 1x' + sizea(1) + '-matrix c: '); sizec = size(a); if sizec(1) == 1 && sizec(2) == sizea(1) break; end display('error: have enter 1x' + sizea(1) + '-matrix!') end display('the initial values: '); % well, don't know how start writing code initial values
========================
finally, got want
while(true) = input('enter square matrix a: '); sizea = size(a); if sizea(1) == sizea(2) && ndims(a) == 2 break; end display('error: have enter square matrix!') end while(true) b = input(['enter ' , num2str(sizea(1)) , 'x1-matrix b: ']); sizeb = size(b); if sizeb(1) == sizea(1) && sizeb(2) == 1 && ndims(b) == 2 break; end display(['error: have enter ' , num2str(sizea(1)) , 'x1-matrix!']) end while(true) c = input(['enter 1x' , num2str(sizea(1)) , '-matrix c: ']); sizec = size(c); if sizec(1) == 1 && sizec(2) == sizea(1) && ndims(c) == 2 break; end display(['error: have enter 1x' , num2str(sizea(1)) , '-matrix!']) end display('the initial values: '); i=1:sizea(1) x(i) = input(['enter x' , num2str(i) , '(0): ']); end
you haven't shown how far you've gotten or you've tried. remember not place request entire code, ask in solving specific issues.
however, don't want leave hanging there without help. so, can try using following functions write script. can edit post ask more specific question once have basic script working.
- look @
input
function requesting user input - use
error
function throw error. - use
size
dimensions of array. use 2 output arguments[rows cols]=size(a)
both dimensions. - it's not enough check if
rows==cols
. you'll need confirm there 2 dimensions usingndims
, if there more 2 dimensions , request 2 outputs size, combines second , higher dimensions second output. example, see[rows,cols]=size(rand(4,2,2))
- you can use
isequal
along of above verify if input dimensions matricesb
,c
correct. - you can either store initial values cell suggested kwatford or vector. can't suggest 1 without knowing you're going it.
hope these helped started.
Comments
Post a Comment