ejercicio en c

Iniciado por khrt17, 12 Octubre 2010, 17:56 PM

0 Miembros y 1 Visitante están viendo este tema.

khrt17

Hola me presento soy Nuevo y la verdad me gusto esta web por que me enseña cosas de las que estoy estudiando. Pero bueno vamos al grano este es el ejercicio:

dada una Mz(Matriz):

A00--A01--A02--A03--A04
A10--A11--A12--A13--A14
A20--A21--A22--A23--A24
A30--A31--A32--A33--A34
A40--A41--A42--A43--A44

Insertar en un vector ordenado de la siguiente manera:

A04---A03---A14---A24---A13---A02---A01---A12---A23---A34---A44---A33---A22---A11---A00---A10---A21---A32---A43---A42---A31---A20---A30---A41---A40

Bueno lo que en verdad quiero no es que me lo hagan ni nada por el estilo (el que lo haga que se lo quede jajajjaja) solo necesito es que me lo expliquen de la manera mas sencilla (realmente lo que se me dificulta es el recorrido de la Mz), y la verdad es que yo apenas estoy comenzando en esto (mis estudios de Ing. de Sistemas en la U).

gracias por la atencion prestada y si lo logro hacer lo monto si no pss.... que lo haga otro jajajajajajajajaj

iCore


Shell Root

Pues aquí con un poco de tiempo. Primero miremos las estructuras básicas del printeo de datos,
Código (cpp) [Seleccionar]
M[0][4]
M[0][3] + M[1][4]
M[2][4] + M[1][3] + M[0][2]
M[0][1] + M[1][2] + M[2][3] + M[3][4]
M[4][4] + M[3][3] + M[2][2] + M[1][1] + M[0][0]
M[1][0] + M[2][1] + M[3][2] + M[4][3]
M[4][2] + M[3][1] + M[2][0]
M[3][0] + M[4][1]
M[4][0]


Estás son las secuencias para mostrar los datos en el orden pre-definido. Pero si mirais los índices de la matriz, concuerdan con los datos de la matriz -Suponiendo de que los datos sean los sub-indices que pusisteis-. Es correcto lo que estoy diciendo?
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

ace332

#3
Se tiene que realizar el siguiente recorrido en la matriz:


A00  A01--A02  A03--A04
|  \    \    \    \
A10  A11  A12  A13  A14
  \    \    \   \  |
A20  A21  A22  A23  A24
|  \    \    \    \
A30  A31  A32  A33  A34
  \    \    \    \  |
A40--A41  A42--A43  A44


el código debería quedar algo asi:


int i=0,j=4,z=1;
int vector[25];

vector[0]=A[0][4];
while(!(i==4&&j==0))
{
 /* aqui se calculan los valores siguientes de i y j */
 /* ... */
 
 vector[z++]=A[i][j];
}

Saludos