Ciao a tutti... Per esercizio devo creare una matrice ordinata creascente nxn di numeri casuali... una matrice di numeri casuali l'ho fatta, il problema è la crescenza in righe e colonne. Dovendo avere ogni riga ordinata da destra a sinistra e ogni colonna dall'alto verso il basso, mi sono impantanato... Il problema è quasi certamente nell'if del loop, ma non mi veniva in mente altra soluzione, dovendo essere ogni elemento della matrice maggiore dell'elemento alla sua sinistra e di quello in alto... :muro:
int matrice(int n) {
int i, j, c, d;
int x[n][n];
for (j=0; j<n; j++) { //colonne
for (i=0; i<n; i++) { //righe
loop:
c = numero_casuale(d);
x[i][j] = c;
if (x[i][j]<x[i][j-1] && x[i][j]<x[i-1][j]) goto loop;
printf("%d ", x[i][j]);
}
printf("\n");
}
printf("Ho generato una matrice di %d righe e %d colonne con numeri compresi tra 0 e INT_MAX", n, n);
return(n);
}