public class Main
{
public static void main(String[] args) {
int array_length = 5; // Количество эллементов массива
int rand_step = 15; // разница между минимумом и максимум для каждой колонки
int array_min, array_max, numb;
boolean in_array = true;
int[][] twoDimArray = new int[array_length][array_length];
for(int i = 0; i < array_length; i++){
for(int j = 0; j < array_length; j++) {
// рандж для гпсч от и до для каждой колонки
array_max = rand_step * (j + 1);
array_min = array_max - rand_step;
do {
in_array = false;
// создаём случайное число
numb = (int) (Math.random() * ((array_max - array_min) + 1)) + array_min;
// проверим на уникальность
for (int k = 0; k < i; k++) {
if ((int) twoDimArray[k][j] == (int) numb) {
in_array = true;
break;
}
}
} while(in_array);
twoDimArray[i][j] = numb;
System.out.print(numb);
System.out.print("\t"); //print tab
}
System.out.print("\r\n"); // print new line
}
}
}