public class Program {
static boolean isPrime(int num) {
for (int i = 2; i <= num / 2; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
static void fill_matrix_with_prime_number(int matrix[][]) {
int rows = matrix.length;
int cols = matrix[0].length;
int total = rows * cols;
int result[] = new int[total];
int index = 0;
int num = 2;
while (index < total) {
if (isPrime(num) == true) {
result[index] = num;
index++;
}
num++;
}
index = 0;
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
matrix[i][j] = result[index];
index++;
}
}
}
public static void main(String args[])
{
int rows = 4, cols = 5;
int matrix[][] = new int[rows][cols];
fill_matrix_with_prime_number(matrix);
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
System.out.printf("%3d", matrix[i][j]);
}
System.out.println();
}
}
}
/*
run:
2 3 5 7 11
13 17 19 23 29
31 37 41 43 47
53 59 61 67 71
*/