Matlab - matriz nxn ordenada desde el exterior!!!

 
Vista:

matriz nxn ordenada desde el exterior!!!

Publicado por costafro (2 intervenciones) el 10/03/2012 05:32:16
He intentado realizar un programa en MATLAB en el que se muestre la matriz nxn (matriz cuadrada), compuesta por los digitos desde 1 hasta nxn, comenzado desde el exterior hasta el interior de la matriz, en sentido de rotación horaria. El tamaño n es el resultado de un valor de entrada de un número entero... para ilustrar mejor el problema muestro el siguiente ejemplo...

EJ:

n=4 (matriz 4x4)

la matriz resultante es:

1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

matriz nxn ordenada desde el exterior!!!

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 10/03/2012 08:53:48
Hola Costafro.
Te doy un bosquejo. El problema es bonito, pero hay que pensarlo.
i=1;
opcion
mientras i<n^2
switch (opcion)
case 1 para avanzar llenando la matriz desde izquierda hacia derecha
case 2 para avanzar llenando la matriz desde arriba hacia abajo
case 3 para avanzar llenando la matriz desde derecha hacia izquierda
case 4 para avanzar llenando la matriz desde abajo hacia arriba
fin mientras

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
EJECUCION DEL PROGRAMA
 
>> ordenada_desde_exterior_una_matriz(3)
 
b =
 
     1     2     3
     8     9     4
     7     6     5
 
>> ordenada_desde_exterior_una_matriz(4)
 
b =
 
     1     2     3     4
    12    13    14     5
    11    16    15     6
    10     9     8     7
 
>> ordenada_desde_exterior_una_matriz(5)
 
b =
 
     1     2     3     4     5
    16    17    18    19     6
    15    24    25    20     7
    14    23    22    21     8
    13    12    11    10     9
 
>> ordenada_desde_exterior_una_matriz(6)
 
b =
 
     1     2     3     4     5     6
    20    21    22    23    24     7
    19    32    33    34    25     8
    18    31    36    35    26     9
    17    30    29    28    27    10
    16    15    14    13    12    11



Saludos.
JOSE JEREMIAS CABALLERO

Servicios de programacion matlab


Asesor de Proyectos con Matlab
programador en matlab
[email protected]


http://matlabcaballero.blogspot.com/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

matriz nxn ordenada desde el exterior!!!

Publicado por costafro (2 intervenciones) el 04/04/2012 00:05:24
Gracias Jose por tu tiempo...

Ya pude solucionarlo... lo realicé con 4 for, tomando como referencia dos variables... que pueden cambiar en cada sentencia...

si... muy interesante el problema...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar