Programación Específica > Diseño de Algoritmos

 Necesito Ideas

<< < (2/2)

digichap28:
Hasta ahora lo que he logrado es lo sgt,

   
          
--- Citar ---for(j=1;j<m;j++){
      i=1;
      JOptionPane.showMessageDialog(null, a[j] );
      }
     
      for(i=1;i<n;i++){
      j=m;
      JOptionPane.showMessageDialog(null, a[j]  );
      }
     
      for(j=m;j>=2;j--){
      i=n;
      JOptionPane.showMessageDialog(null, a[j] );
      }
     
      for(i=n;i>=2;i--){
      j=1;
      JOptionPane.showMessageDialog(null,a[j]  );
      }
 
--- Fin de la cita ---

OJO ,ESTA EN JAVA (es la parte del proceso)

La verdad es que eso es lo unico que se me ha ocurrido , solo hace lo sgt en una matriz.

1        2     3     4
5        6     7     8
9        10   11    12
13      14   15    16

1 2 3 4 8 12 16 15 14 13 9 5,

de ahi no pasa, claro que es porque no he hecho el proceso de la otra parte, pero me di cuenta que lo de adentro o la otra parte del proceso no es la misma para todas las matrices.
Alguien me ayuda con el resto?? please.

Ah, y tal vez no es muy optimizado lo que hice y hay otra forma mas facil , por favor CRITICAR LO que hice si ven que no esta bien.

GRACIAS NUEVAMENTE.

lencho:
weno pues.

Aqui te va el codigo. Pero es de como cargar una matriz en forma de espiral.


--- Código: Text ---    lder:=DimCol; linf:=DimFil;   lizq:=1;      lsup:=2;   f:=1;         c:=1;   opcion:=1;    for k:=1 to (DimFil*DimCol) do   begin       case opcion of         1:begin               A[f,c]:=k;               inc(c);               if c &#62; lder then               begin                  opcion:=2;                  dec (lder);                  dec (c);                  inc (f);               end;           end;         2:begin               A[f,c]:=k;               inc (f);               if f &#62; linf then               begin                   dec (f);                   dec (c);                   opcion:=3;                   dec(linf);                end;           end;         3:begin               A[f,c]:=k;               dec (c);               if c &#60; lizq then               begin                    inc (c);                    dec (f);                    opcion:=4;                    inc (lizq);                end;            end;         4:begin               A[f,c]:=k;               dec (f);               if f &#60; lsup then               begin                   inc (f);                   inc (c);                   opcion:=1;                   inc (lsup);               end;            end;         end;    end;  

BYTE

Navegación

[0] Índice de Mensajes

[*] Página Anterior

Ir a la versión completa