[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: rand
Dizzy
Вообщем как сделать так, чтобы из rand()
появлялись только числа, которые делятся на 5. Т.е.
rand(1,100)
и выводились такие числа, как 5, 10, 15, 20, 40, 70, 85 и т.д., а не 84, 14, 11 и т.п.



Спустя 6 минут, 32 секунды (6.07.2011 - 19:27) kristall написал(а):
Как-то так:

while (true) {
$a = rand(1,100);
if (!($a % 5)) continue;
echo $a;
}

Спустя 2 минуты (6.07.2011 - 19:29) Winston написал(а):
for($i = 1; $i <= 100; $i++)
{
if(($num = rand(1, 100)) % 5 == 0)
echo $num . '<br/>';
}

Спустя 8 минут, 37 секунд (6.07.2011 - 19:38) DySprozin написал(а):
лучше mt_rand юзать (;

Спустя 2 минуты, 52 секунды (6.07.2011 - 19:41) Dizzy написал(а):
kristall, не работает. в таймаут 30 сек уходит.
PHPprogramer вы не много не поняли, что мне нужно. Мне нужно рандомское значение, которые делится на 5 без остатка, а не по порядку 5, 10, 15 ....
DySprozin оффтоп пошел?

Спустя 7 минут, 4 секунды (6.07.2011 - 19:48) Winston написал(а):
Можно вот так
echo rand(1, 100)) % 5;

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

Цитата (Dizzy @ 6.07.2011 - 19:41)
Мне нужно рандомское значение, которые делится на 5 без остатка, а не по порядку 5, 10, 15

Так оно и выпадает рандомно, за 100 итераций выпадает чисел 15-20

Спустя 8 минут, 58 секунд (6.07.2011 - 19:57) Dizzy написал(а):
мне нужно чтобы выпадало такое число ВСЕГДА. и только одно

Спустя 1 минута, 21 секунда (6.07.2011 - 19:58) bodja написал(а):
$tmp=rand(1,20)*5;
echo $tmp;

Спустя 4 минуты, 33 секунды (6.07.2011 - 20:03) DySprozin написал(а):
;;оффтоп пошел?
вообще-то совет (;

;;PHPprogramer вы не много не поняли, что мне нужно.
;;Мне нужно рандомское значение, которые делится на 5 без остатка
а немного поправить код - не судьбаааа? (;

for($i = 1; $i <= 100; $i++)
{
if(($num = mt_rand(1, 100)) % 5 == 0)
break;
}
echo $num;


еще короче:
while(($num = mt_rand(1, 100)) % 5 != 0) {}
echo $num;

Спустя 1 минута, 52 секунды (6.07.2011 - 20:05) Dizzy написал(а):
Цитата (bodja @ 6.07.2011 - 16:58)
$tmp=rand(1,20)*5;
echo $tmp;

спасибо

Спустя 44 секунды (6.07.2011 - 20:05) kristall написал(а):
Цитата (Dizzy @ 6.07.2011 - 20:41)
kristall, не работает. в таймаут 30 сек уходит.

Только копипастить умеем, да?

Спустя 1 минута, 50 секунд (6.07.2011 - 20:07) DySprozin написал(а):
kristall
кажется ты выход из цикла не предусмотрел laugh.gif

Спустя 2 минуты, 23 секунды (6.07.2011 - 20:10) Winston написал(а):
function multipleNum($to, $multiple)
{
$arrayNum = Array();
for($i = 0; $i <= $to; $i += $multiple)
$arrayNum[] = $i;

return $arrayNum[array_rand($arrayNum)];
}
echo multipleNum(100, 5);

Спустя 5 секунд (6.07.2011 - 20:10) kristall написал(а):
Цитата (DySprozin @ 6.07.2011 - 21:07)
kristall
кажется ты выход из цикла не предусмотрел  laugh.gif

А это требовалось в условии?

Спустя 4 минуты, 12 секунд (6.07.2011 - 20:14) DySprozin написал(а):
;;А это требовалось в условии?
жжошь laugh.gif laugh.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.