martes, 3 de abril de 2012

Impresion de una matriz cuadrada desde exterior al interior

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
Programa en matlab
 
function  ordenada_desde_exterior_una_matriz1(n)
j1=1;     f1=n; 
j2=2;     f2=n;
j3=n-1;   f3=1;
j4=n-1;   f4=2;
s=0;
opcion=1;
while s<n^2
switch (opcion)
    case 1
          for i=j1:f1, s=s+1;  b(j1,i)=s, pause(0.4), end
          j1=j1+1; f1=f1-1;   opcion=2;
       
    case 2 
         for i=j2:f2, s=s+1;   b(i,f2)=s, pause(0.4), end
         j2=j2+1; f2=f2-1;    opcion=3;
         
   case 3 
        for i=j3:-1:f3, s=s+1;  b(j3+1,i)=s,  pause(0.4),end
        j3=j3-1; f3=f3+1;    opcion=4;
         
   case 4
        for i=j4:-1:f4,  s=s+1;  b(i,f4-1)=s, pause(0.4),end
        j4=j4-1;   f4=f4+1;   opcion=1;      
    end
end
 b
EJECUCION DEL PROGRAMA

>> 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(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
José Jeremías Caballero
Servicios de Programación en MatLab
Lima - Perú

Para mayor informacion, contactarse a jjcc94@hotmail.com

2 comentarios:

Programación y algoritmos: asesorías, servicios, revision, creación y cursos

Asesorías, servicios, revisión, creación y cursos    modalidad online Servicios ofrecidos Asesoría Online Personalizada en MATLAB y...