Ho sistemato il codice così, prima avevo frainteso il testo, ma non è ancora giusto il codice
Import java.util.Scanner;
import java.util.Random;
public class Es_2_bis {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("inserisci N: ");
int n = scan.nextInt();
System.out.println("inserisci M: ");
int m = scan.nextInt();
int[][]matriceX = new int[n][m];
matriceX = makeMatrix(n,m);
for (int i = 0; i < matriceX.length; i++) {
for (int j = 0; j < matriceX[i].length; j++) {
System.out.print(matriceX[i][j] + " ");
}System.out.println();
}
boolean[] Y = new boolean[m];
Y = controllo(matriceX, n, m);
for (int z = 0; z < Y.length; z++) {
System.out.println(Y[z]);
}
}
static int[][] makeMatrix(int righe, int colonne) {
int[][] x = new int[righe][colonne];
for (int i = 0; i < righe; i++) {
for (int j = 0; j < colonne; j++) {
Random generator = new Random();
int d = generator.nextInt(2);
x[i][j] = d;
}
}
return x;
}
static boolean[] controllo(int[][] matrice, int n, int m) {
boolean[] y = new boolean[m];
int check = 0;
for (int i = 0; i < n; i++) {
check = 0;
for (int j = 0; j < m; j++) {
if(matrice[i][j]==1)check = check +1;
if(check%2 == 0 || check == 0) {
y[j]=true;
}else y[j]=false;
}System.out.println("check: " + check);
}
return y;
}
}