What if I wanted a triangle of numbers from the formula (2n-1) that resulted in a triangle inside a matrix such that...
[0 0 0 0 1 0 0 0 0]
0 0 0 2 1 2 0 0 0
0 0 3 2 1 2 3 0 0
0 4 3 2 1 2 3 4 0]
etc?...

 Akzeptierte Antwort

Andrei Bobrov
Andrei Bobrov am 30 Aug. 2016

3 Stimmen

sort(spdiags(toeplitz(1:n)))

4 Kommentare

Billy Albritton
Billy Albritton am 30 Aug. 2016
Stop being a genius. :-)
Billy Albritton
Billy Albritton am 30 Aug. 2016
What if I want to write a loop script to do the same thing?
Andrei Bobrov
Andrei Bobrov am 30 Aug. 2016
Bearbeitet: Andrei Bobrov am 30 Aug. 2016
Hi Billy!
With loop:
a = zeros(n,2*n-1);
for jj = 1:n
a(jj,n-jj+1:n+jj-1) = [jj:-1:1,2:jj];
end
Billy Albritton
Billy Albritton am 10 Sep. 2016
Thank you! You are amazing!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Get Started with MATLAB finden Sie in Hilfe-Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by