Como implementar este algoritmo escrito em C no Java?

,

#include <stdio.h>
#include <stdlib.h>
#define MAX 400

int main()
{
int M[MAX][MAX], quantidadeZero = 0, quantidadeUm = 0, linhas, colunas;

printf("Insira o numero de linhas: ", linhas);
scanf("%d", &linhas);

printf("Insira o numero de colunas: ", colunas);
scanf("%d", &colunas);

for(int i = 0; i < linhas; i++) {
	for(int j = 0; j < colunas; j++) {
	    printf("Insira o elemento (0 ou 1) [%d][%d]: ", i, j);
		scanf("%d", &M[i][j]);
	}
}

for(int i = 0; i < linhas; i++) {
	for(int j = 0; j < colunas; j++) {
	    if(M[i][j] == 1)
            quantidadeUm++;
        else
            quantidadeZero++;
	}
}
printf("\n");
printf("Quantidade de zeros: %d\nQuantidade de numeros um: %d", quantidadeZero, quantidadeUm);

return 0;

}

Poderia ser assim:

import java.util.Scanner;

public class App {
  public static void main(String... args) {
    try (final Scanner scan = new Scanner(System.in)) {
      System.out.println("Insira o numero de linhas: ");
      final int linhas = scan.nextInt();

      System.out.println("Insira o numero de colunas: ");
      final int colunas = scan.nextInt();

      final int[][] matriz = new int[linhas][colunas];

      for (int i = 0; i < linhas; i++) {
        for (int j = 0; j < colunas; j++) {
          System.out.printf("Insira o elemento (0 ou 1) [%d][%d]: ", i, j);
          matriz[i][j] = scan.nextInt();
        }
      }

      int quantidadeZero = 0, quantidadeUm = 0;

      for (int i = 0; i < linhas; i++) {
        for (int j = 0; j < colunas; j++) {
          if (matriz[i][j] == 1)
            quantidadeUm++;
          else
            quantidadeZero++;
        }
      }

      System.out.println();
      System.out.printf("Quantidade de zeros: %d\nQuantidade de numeros um: %d\n", quantidadeZero, quantidadeUm);
    }
  }
}
1 curtida

Obg😍