How do i use a pair of nested for loops to store a series of 9 related numbers in a 3x3 matrix?
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
the outer loop decides what row and the inner loop decides what column to store each number in the series, the code should prompt the user for the starting number and increment of the series
5 Kommentare
David Goodmanson
am 6 Sep. 2018
Does this have to be done with 'for' loops, or is any technique in Matlab all right to use?
Antworten (2)
Dennis
am 6 Sep. 2018
I hope i got the question right (some possible solutions with increasing number of loops):
%no loop
a=1;
b=1;
X=ones(1,9)*a;
Y=ones(1,8)*b;
Y=cumsum(Y);
X(2:end)=X(2:end)+Y;
X=reshape(X,[],3)';
%1 loop
a=1;
b=1;
X=ones(1,9)*a;
for i=1:numel(X)
X(i)=X(i)+(i-1)*b;
end
X=reshape(X,[],3)';
%2 loops
a=1;
b=1;
X=ones(3,3)*a;
for i=1:3
for k=1:3
X(i,k)=a+(i*k-1)*b;
end
end
0 Kommentare
Stephen23
am 6 Sep. 2018
Bearbeitet: Stephen23
am 6 Sep. 2018
"How do i use a pair of nested for loops to store a series of 9 related numbers in a 3x3 matrix?"
num = str2double(input('start number: ','s'));
nrows = 3;
ncols = 3;
mat = nan(nrows,ncols);
for kr = 1:nrows
for kc = 1:ncols
mat(kr,kc) = num;
num = num+1;
end
end
And when run:
start number: 1
>> mat
mat =
1 2 3
4 5 6
7 8 9
0 Kommentare
Siehe auch
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!