how do I generate a spiral matrix which starts from first element

22 Ansichten (letzte 30 Tage)
there is a command which takes only one arguement as a dimension of a square spiral matrix.But I need a way to generate such a matrix which takes the numbers of rows and columns as inputs and it might not be a square
  1 Kommentar
darova
darova am 9 Jun. 2019
I don't understand. How this matrix should looks like? Can you please show some scheme?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

PIYUSH AGGARWAL
PIYUSH AGGARWAL am 9 Jun. 2019
Bearbeitet: PIYUSH AGGARWAL am 10 Jun. 2019
You will have to write your own code for this.
A = zeros(3,6);%You can change this mxn to whatever dims you like, be it square(m=n) or rectangular matrix.
[m,n] = size(A);
%m = no of rows
%n = no of columns
%A = matrix to be filled with spiral values
%This code works fine. I commented an eg also below
top = 1;
bottom = m;
left = 1;
right = n; %To keep track of the four directions
value = 1;%Let us strat from 1
while true
%Top Row First
if left>right
break;
end
for i = left:right
A(top,i) = value;
value = value + 1;
end
top = top + 1;
%Then The RightMost Column
if top>bottom
break;
end
for i = top:bottom
A(i,right) = value;
value = value + 1;
end
right = right - 1;
%Then Bottom Row
if left>right
break;
end
for i = right:-1:left
A(bottom,i) = value;
value = value + 1;
end
bottom = bottom - 1;
%Then The Left Column
if top>bottom
break;
end
for i = bottom:-1:top
A(i,left) = value;
value = value + 1;
end
left = left + 1;
end
A
  5 Kommentare
Matsh
Matsh am 12 Jun. 2019
So the uzumaki_matrix is done then.What about dx_ball?:)
Arshub
Arshub am 16 Mai 2022
@PIYUSH AGGARWAL Please, I hope that you can help me in modifying your code so that I enter an array from me like A= [2 3 5
12 13 14
19 0 4]
and a spiral display is made for it, then I want another code in which I can retrieve my original array. I would be grateful for your help.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

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

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by