[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Зависимость рандомного значения от переменной
imilka
Привет.

В общем такая задача -
имеется переменная, которой может быть установлено значение от 1 до 100.

Надо сгенерировать число (от 175 до 225), которое будет зависеть от значения переменной, то есть: чем больше переменная, тем меньше полученное число.

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

Как примерно реализовать такое, и вообще, возможно ли? smile.gif
Спасибо.




Спустя 39 минут, 22 секунды (1.03.2010 - 14:08) TakoY написал(а):
возможно. если придумать математическую функцию.
но можно ведь проще ? например так
$x=rand(1,100);
if($x>=1 and $x<10) $y=rand(220,225);
elseif($x>=10 and $x<20) $y=rand(215,219);
elseif($x>=20 and $x<30) $y=rand(210,214);
elseif($x>=30 and $x<40) $y=rand(205,209);
и т.д.

Спустя 1 час, 53 минуты, 35 секунд (1.03.2010 - 16:01) Gabriel написал(а):
$x = 100;

if ( $x < 100 )
$rand = 225 - ceil( 0.5 * $x );
else
$rand = 225 - ceil( 0.5 * ( $x - 20 ) ); //чтобы не получать единственное значение

//echo $rand;

echo rand( 175, $rand );

так чтоли?

Спустя 4 часа, 2 минуты, 44 секунды (1.03.2010 - 20:04) imilka написал(а):
Цитата (Gabriel @ 1.03.2010 - 13:01)
так чтоли?

Вот, спасибо огромное - качество результатов очень даже smile.gif
Цитата
возможно. если придумать математическую функцию.
но можно ведь проще ? например так

Так тоже можно, но прописывать лень, тем более шаг в 10 значений не очень подойдет smile.gif

Спустя 20 минут, 25 секунд (1.03.2010 - 20:24) Gabriel написал(а):
imilka
ну ты посмотри авось че не таг ибо писал на скорую руку

Спустя 37 минут, 33 секунды (1.03.2010 - 21:02) imilka написал(а):
Угу, я поправил, чтобы минимальное значение еще было, а так все супер smile.gif
Быстрый ответ:

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