Info

此问题已关闭。 请重新打开它进行编辑或回答。

Making Matrices with Loops

1 次查看(过去 30 天)
Gina Barlage
Gina Barlage 2015-5-26
关闭: MATLAB Answer Bot 2021-8-20
This is the assignment I was given:
Create a script called script19.m. The script should assume scalar value of n is assigned in the command window. The script should create an n-by-n matrix A where
A = [nn ... n2 n1;
....
2n ... 22 21;
1n ... 12 11]
An example execution is as follows:
>> n = 3;
>> script19
A =
33 32 31
23 22 21
13 12 11
This is the script I wrote but I still can't get an answer:
A = zeros(N);
for ii = N : 1
for jj = (10*ii) + N : (10* ii) + 1
A = jj
end
end
Am I on the right track??

回答(3 个)

the cyclist
the cyclist 2015-5-26
You are on the right track. I can give you a couple hints:
First, be aware that the loop
for ii = N : 1
won't work. I think you want
for ii = N : -1 : 1
so that ii counts down. Similarly for your other loop.
Next, notice that inside your loop, you are not writing to specific positions in your A matrix. You'll need to fix that.

Walter Roberson
Walter Roberson 2015-5-26
A = [10*(1:n)', ones(n,1)] * [ones(1,n);1:n];
  2 个评论
Gina Barlage
Gina Barlage 2015-5-26
this needs to go from the higher number to the lower number down and across. I tried A = [10*(N: -1:1)', ones (N,1) * [ones(1.N); 1:N] and it kept giving me an error.
Thorsten
Thorsten 2015-5-26
A = [10*(n:-1:1)', ones(n,1)] * [ones(1,n);n:-1:1];

Andrei Bobrov
Andrei Bobrov 2015-5-26
bsxfun(@minus,((10*n+n):-10:10)',0:n-1)

此问题已关闭。

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by