processar matrices

Iniciado por david_BS, 14 Marzo 2012, 18:59 PM

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

david_BS

ak muestro como se puede procesar una matríz de int's de 6 formas diferentes, si se les ocurre otras formas pueden mostrarlas..

se da una matríz de 2x5 inicializada y se trata de listar los 10 números de la misma, de formas diferentes usando también notación de punteros.


void procesar_mat1(int **m){

for(int i=0;i<10;i++){

cout << "m: " << (int)m[i] << endl;
}
}

void procesar_mat2(int (*m)[5]){

for(int i=0;i<2;i++){

for(int j=0; j<5; j++){


cout << "m: " << m[i][j] << endl;
}
}
}

void procesar_mat3(int m[2][5]){

for(int i=0;i<2;i++){

for(int j=0; j<5; j++){

cout << "m: " << m[i][j] << endl;
}
}
}

void procesar_mat4(int **m){

int *p=(int*)&m[0];

for(int i=0;i<10;i++){

cout << "p: " << p[i] << endl;
}
}

void procesar_mat5(int *m){

for(int i=0;i<10;i++){

cout << "m: " << m[i] << endl;
}
}

void procesar_mat6(int (*m)[]){

int *p=(int*)m;

for(int i=0;i<10;i++){

cout << "p: " << p[i] << endl;
}
}


int main()
{
int mat[2][5] = { { 1,2,3,4,5 },{ 1,2,3,4,5 } };

//procesar_mat1((int**)mat);
//procesar_mat2(mat);
//procesar_mat3(mat);
//procesar_mat4((int**)mat);
//procesar_mat5((int*)mat);
//procesar_mat5(*mat);

procesar_mat6((int (*)[])mat);

PAU

return 0;
}


Hasta luego