Random random = new Random();
int randomx = random.Next(0, 240);
Это способ получить свое случайное число от 0 до 240, как получить только интегралы, разделяющие 5? (0 включены)Случайное число, разделенное на 5
0, 5, 10, 15, 20, 25 .. 240
Random random = new Random();
int randomx = random.Next(0, 240);
Это способ получить свое случайное число от 0 до 240, как получить только интегралы, разделяющие 5? (0 включены)Случайное число, разделенное на 5
0, 5, 10, 15, 20, 25 .. 240
Как об этом:
Random random = new Random();
return random.Next(0, 48) * 5;
Или, если вам нужно 240 включены, так как ваш список указывает:
Random random = new Random();
return random.Next(0, 49) * 5;
Спасибо ... не могу поверить, что ответ был таким простым. –
+1, но я думаю, что если вы хотите включить 240, ваш номер должен быть 49, а не 48. В верхнем конце это _exclusive_, поэтому наибольшее число, которое вы получите сейчас, - 47x5 или 235. Исправлено это для вас. – paxdiablo
Вы правы :) – marcind
Random random = new Random();
int randomx = random.Next(0, 48) * 5;
давайте закроем это как дубликат: p (я знаю, он только на несколько секунд опоздал) –
Вот один (очень плохо, поэтому сообщества вики) способ сделать это:
Random random = new Random();
int randomx = 1;
while ((randomx % 5) > 0)
randomx = random.Next (0,240);
:-)
Смело downvote этот ответ в Лету. На самом деле это просто мешает другим публиковать его.
Хорошо. Кто, черт возьми, поддержал меня? Это не полезно в _all! _ Кроме того, как индикатор того, что _not_ делать. – paxdiablo
Не могу позволить этому ответу оставаться погребенным! –
О, ну, как минимум, он никогда не встанет выше принятого ответа. Я полагаю, что это что-то :-) – paxdiablo
ПРЕДУПРЕЖДЕНИЕЮмор код не очень подходит для производственных сред
public static IEnumerable<int> RandomGen(int minValue, int maxValue)
{
var random = new Random();
while (true) yield return random.Next(minValue, maxValue);
}
public static IEnumerable<int> RandomGen(int minValue, int maxValue, params Func<int, bool>[] predicates)
{
return RandomGen(minValue, maxValue)
.Where(rnd => predicates.Aggregate(true, (a, pred) => a && pred(rnd)));
}
Таким образом, вы можете просто
foreach (var x in RandomGen(0, 240, r => (r%5)==0))
{
// use x
}
(пожалуйста, не стреляйте меня)
Что, нет -один с x = 1; while ((x% 5)> 0) x = random.Next (0,240); 'solution? :-) – paxdiablo
@paxdiablo: Нет! Ты первый! –
@paxdiablo: Теоретически возможно, что ваш код будет отложен в цикле для loooong time. –