Антон
Антон

Как равномерно заполнить массив

Здравствуйте. Пишу сапера. Решил отделить полностью логику от интерфейса. Столкнулся с проблемой равномерного распределения мин по полю. Может кто подсказать как можно равномерно раскинуть мины? Если просто генерировать 10 псевдослучайных чисел то они практически всегда оказываются в начале поля. Буду очень благодарен за словесное описание алгоритма без кода. Заранее спасибо.

В идеале - может кто знает какую-то функцию из матана. Или что-то такое что я могу почитать в интернете? (но что б эта функция каждый раз по новому раскидовала значения)

Анас Эль Сайед
Анас Эль Сайед

#include
#include
int main() {
srand(static_cast(time(NULL)));
const size_t rows = 24, cols = 79;
unsigned count = 25;
unsigned char minefield[rows][cols];
for (rsize_t row = 0; row < rows; row++, std::cout << std::endl) {
for (rsize_t col = 0; col < cols; col++) {
if (count && rand() % (rows * cols - row * col) < count * 1.5) {
minefield[row][col] = 177;
--count;
} else minefield[row][col] = 249;
std::cout << minefield[row][col];
}
}
std::cin.get();
return 0;
}

Иван
Иван

у тебя потому все случайные числа возле нуля что не вникаешь в каком диапазоне у тебя генерятся случайные числа.

Ба
Бахриддин

пробуй типа так: разделить масив на х частей и заполнить их случайными числами типа есть масив с 100 элементов и 10 минами, 100 делим на десять запускаем цикл на десять оборотов и в каждом обороте запускаем один рандом

Похожие вопросы
Как заполнить массив? Pascal
Написать программу которая сможет: Заполнить массив из 7
Между плоскими горизонтальными пластинами, заряженными равномерно, по-мещена пылинка массой ...
заполнить двумерный массив..
Как в языке Paskal заполнить одномерный массив случайными числами?
Помогите пожалуйста заполнить двумерный массив константами!
Заполнить массив А по следующему принципу в паскале
Паскаль АБС Заполните двумерный массив с клавиатуры, замените положительные элементы, стоящие ниже побочной диагонали, восьмерками.
Жесткий диск заполнен.
Человек массы м=60кг идет равномерно по