Hola gente!!!
bueno les cuento que estoy ante un gran dilema esto es asi:
mediante una matriz estatica de enteros de 20 x 20 hay que generar dinamicamente otra matriz cuyos elementos son todos aquellos que son unicos en la matriz estatica de 20 x 20, es decir si en la matriz estatica tenemos:
pos[0][0]=1
pos[0][1]=1
pos[0][2]=23
en la dinamica tendremos pos[0][0]=23
ya que 23 es unico en la matriz
el algoritmo responde bien hace exactamente eso pero me quedo muy confuso si alguien purde sugerir alguna manera de arreglarlo o de encararlo por otro lado seria grandioso !!
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
void gen_matriz (int** nuevo, int matriz[20] [20])
{
int j, k, y;
int dup;
int num_elem[20];
nuevo
= (int**) calloc(20, sizeof(int*));
for (y = 0; y < 20; y++)
{
num_elem[y] = 0;
for (k = 0; k < 20; k++)
{
dup = 0;
j = 0;
while ((j < 20) && !dup)
{
if (k != j)
{
dup = matriz[y][k] == matriz[y][j];
printf ("y=%i %i %in",y
, j
, dup
); }
j++;
}
if (!dup)
{
num_elem[y]++;
if (nuevo[y] == NULL)
nuevo
[y
] = (int*) malloc(sizeof (int)); else
nuevo
[y
] = (int*) realloc(nuevo
[y
], num_elem
[y
] * sizeof (int));
int indice = num_elem[y] - 1;
nuevo[y][indice] = matriz[y][k];
printf (" posicion %i %i : %in", y
, k
, nuevo
[y
] [indice
]);
}
}
}
for(y = 0; y < 20; y++)
for(k = 0; k < num_elem[y]; k++)
printf("nuevo[%i][%i] = %in", y
, k
, nuevo
[y
][k
]); }
esta un poco desprolijo espero que se entienda
espero que me puedan ayudar saludos!!!