questo è il codice che ho realizzato, funziona fino quando j è diverso da zero, quando lo diventa, se inserisco un valore minore, devo tornare nella posizione precedente e lo confronta appunto con questo, solo che se faccio j-1 da outofbounds.
ho provato anche a mettere la lunghezza delle righe ma nulla!!
Qualcuno per favore può gentilmente aiutarmi??
grazie in anticipo!!
R=numero di righe
C=numero di colonne
m1=matrice
i=contatore delle righe
j=contatore delle colonne
codice:
static void inserimento2(int [][] m1, int R, int C){
for(int i=0; i<R; i++){
for(int j=0; j<C; j++){
System.out.println("Inserisci l'elemento [" + (i + 1) +" , "+ (j+1) + "] della matrice-->");
m1[i][j]=scan.nextInt();
if(i==0){
if(j==0){
System.out.print();
}
else if(j!=0){
while(m1[i][j]<m1[i][j-1]){
System.out.println("Per favore inserisci un numero maggiore o uguale a " + m1[i][j-1]);
m1[i][j]=scan.nextInt();
}
}
}
else if(i!=0){
if(j==0){
while(m1[i][j]<m1[i-1][m1[C].length-1]){
System.out.println("Per favore inserisci un numero maggiore o uguale a " + m1[i][m1[0].length]);
m1[i][j]=scan.nextInt();
}
}
else if(j!=0){
while(m1[i][j]<m1[i][j-1]){
System.out.println("Per favore inserisci un numero maggiore o uguale a " + m1[i][j-1]);
m1[i][j]=scan.nextInt();
}
}
}
System.out.println("");
}
}