Используя PHP (приветствуются другие языки, с использованием общих встроенных функций), как я могу получить случайное (или псевдослучайное) число, которое НЕ соответствует определенным критериям?
IE: я хочу $x = rand(0, 99)
, но только если ($x % 9) != 0
.
Что является чистым приемлемым способом ограничения случайных чисел такими критериями?
Например, используя цикл while()
и, возможно, break
, когда у нас есть что-то, что соответствует нашим критериям, затем использовать случайное число после цикла ?:
while ( ($rand_key = array_rand($array_of_items)) && ($rand_key % 9 == 0) )
{
// Do nothing?
}
Или что-то вроде:
while ( $rand_key = array_rand($array_of_items) )
{
if ( $rand_key % 9 == 0 ) {
break;
}
}
Или есть более краткий или подходящий способ сделать это?