No, max y min son los valores reales maximo y minimo encontrados, no las coordenadas de dichos valores dentro de la matriz:
Código C:
Ver originalint m[2][3] = {1,2,3,4,5,6};
int i, j, min = INT_MAX, max = INT_MIN;
for (i=0;i<2;i++) {
for (j=0;j<3;j++)
{
if(m[i][j] < min) {
min = m[i][j];
printf("Sobreescribo min %d\n", min
); }
if(m[i][j] > max) {
max = m[i][j];
printf("Sobreescribo max %d\n", max
); }
}
}
printf("Al final el minimo valor dentro de la matriz es %d, y el maximo es %d", min
, max
);
Si quieres guardar las coordenadas de la posicion del minimo y del maximo tienes que declarar las variables para guardar las dos coordenadas de cada posicion (2 para max y dos para min). Algo asi:
Código C:
Ver originaltypedef struct {
int x, y;
} COORD;
int main() {
int m[2][3] = {1,2,3,4,5,6};
int i, j, min = INT_MAX, max = INT_MIN;
COORD coord_min, coord_max;
for (i=0; i<2; i++) {
for (j=0; j<3; j++) {
if(m[i][j] < min) {
min = m[i][j];
coord_min.y = i;
coord_min.x = j;
}
if(m[i][j] > max) {
max = m[i][j];
coord_max.y = i;
coord_max.x = j;
}
}
}
printf("MIN en [%d][%d] = %d = %d\n", coord_min.
x, coord_min.
y, m
[coord_min.
y][coord_min.
x], min
); printf("MAX en [%d][%d] = %d = %d\n", coord_max.
x, coord_max.
y, m
[coord_max.
y][coord_max.
x], max
);
return 0;
}
Saludos
vosk