ecco il codice corretto! ho tolto gli if dagli else come controllo inverso!
codice:
static void inserimento2(int [][] m1, int R, int C){ //inserire valori in ordine crescente
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(""); //se il valore si trova alla posizione 0,0 non deve essere confrontato
}
else{
while(m1[i][j]<m1[i][j-1]){ //controlla il valore inserito con quello precedente
System.out.println("Per favore inserisci un numero maggiore o uguale a " + m1[i][j-1]);
m1[i][j]=scan.nextInt();
}
}
}
else{
if(j==0){
while(m1[i][j]<m1[i-1][j+C]){ //controlla il valore inserito con quello precedente
System.out.println("Per favore inserisci un numero maggiore o uguale a " + m1[i-1][m1[0].length]);
m1[i][j]=scan.nextInt(); //se inserisce un valore minore, chiede di reinserire un valore però maggiore
}
}
else{
while(m1[i][j]<m1[i][j-1]){ //controlla il valore inserito con quello precedente
System.out.println("Per favore inserisci un numero maggiore o uguale a " + m1[i][j-1]);
m1[i][j]=scan.nextInt();
}
}
}
}
System.out.println("");
}
}