|
|
|
|
|
для: bishake
(18.05.2012 в 14:19)
| | Кстати, если следовать "букве закона", то тогда так (все учесть):
$('#box').css({backgroundColor:'rgb('
+parseInt(Math.random()*255)+','
+parseInt(Math.random()*255)+','
+parseInt(Math.random()*255)+')'})
|
| |
|
|
|
|
|
|
|
для: bishake
(18.05.2012 в 14:19)
| | Я уже сказал - не вижу в поставленной задаче условия "обязательно от белого до черного". Так что "соответствие", это вопрос спорный, разрешить который может только автор. | |
|
|
|
|
|
|
|
для: confirm
(18.05.2012 в 13:33)
| | Дело не в принципиальности, а в несоответствии решения и поставленной задачи. Если сменить - значит сменить, а не оставить тем же в каком-то случае.
'#'+(parseInt(Math.random()*15728640)+1048576).toString(16)
|
Это решение, пожалуй, самое верное и короткое :) | |
|
|
|
|
|
|
|
для: bishake
(18.05.2012 в 13:19)
| | Вот я в этом ТЗ вижу только одно - сменить, а чего, сколько, и по каким условиям нет.
Вам важна принципиальность? Я ответил - укажите нижний порог, например 100000, и в полемики необходимости не будет.
Вероятность, это магия, а я в нее не верю. ;)
PS. Это вам, чтобы успокоились, автора, по моему, это не так волнует как вас. )
'#'+(parseInt(Math.random()*15728640)+1048576).toString(16)
|
| |
|
|
|
|
|
|
|
для: confirm
(18.05.2012 в 12:54)
| | Давайте обратимся к "ТЗ" :)
> После клика на него должна начаться смена цвета, каждые 3 секунды, на случайный.
Из этого утверждения можно сделать однозначный вывод, что каждые 3 секунды цвет должен меняться на некий другой, то бишь HEX-код должен отличаться от предыдущего хотя бы на один символ.
В Вашем случае, вероятность того, что данное условие не выполнится, равна
0x100000 / 0xFFFFFF = 6.25%
|
Фактически, это значит, что каждая 16-ая попытка сменить цвет будет не удачной.
В случае, если формировать 6-значный HEX-код, вероятность невыполнения указанного выше условия равна
Это значит, что в теории неудачной будет одна из 16777215 попыток. Даже меняя цвет 100 раз в секунду, для такого совпадения потребуется около 2 суток, что очень далеко от реальной ситуации. | |
|
|
|
|
|
|
|
для: bishake
(18.05.2012 в 12:16)
| | Значится так - random() такой же случайный как образ бабушки с семечками у подъезда, его случайность, это случай. Если вы докажите, что он таки выдаст цвет с исправной случайностью от черного до белого и ни разу не повторившись, я сниму пред вами шляпу. А если нет, значит я имею право на вольности, какая к черту разница или повтор, или пропуск.
Что касается мест, где нужно тютелька в тютельку, знаю, сам не глуп. | |
|
|
|
|
|
|
|
для: confirm
(18.05.2012 в 04:09)
| | Разумеется важно. Представьте, что каждый месяц случайным образом выбирается, получите Вы зарплату или нет? Может теперь вы станете считать по-другому? | |
|
|
|
|
|
|
|
для: bishake
(17.05.2012 в 20:56)
| | Зачем смотреть, если это естественно? При трех значениях тоже получим цвет, при остальных будет проигнорировано. Но для случайного выбора цвета это разве важно? Я считаю нет. Если так принципиально можно добавить нижнюю границу. | |
|
|
|
|
|
|
|
для: confirm
(17.05.2012 в 19:17)
| | Ваш вариант допускает возможность появления не 6-значных цветов, неужели это не видно? | |
|
|
|
|
|
|
|
для: technic611
(17.05.2012 в 19:29)
| | Десятичное значение шестнадцатеричного числа FFFFFF равно 16777215. Math.random() генерирует числа с плавающей точкой от 0 до 1, поэтому, чтобы получить максимальное нам нужное, умножаем это на 16777215. Далее округляем в меньшую сторону (с тем же успехом вместо Math.floor можно применить parseInt), и преобразуем это число в строку в шестнадцатеричном виде. | |
|
|
|
|