pechkin: (Default)
pechkin ([personal profile] pechkin) wrote2010-01-18 11:02 am

Квантовая механика в домашних условиях

for (int i = 0; i < CompressionModes.Count; i++)
if (DateTime.Now.Ticks % 2 == 0)
Modes.Add(CompressionModes[i]);

Как справедливо заметили друзья, этот алгоритм рандомален только тогда, когда ты не знаешь, сколько времени занимает прогон цикла.

Кстати, он не сработал. Потому что:

[11:01] Beorning: Не, ты не понял. До первого прохода цикла оно неизвестное.
А дальше - оно определилось. Цикл выполняется за z тиков процессора.
Если z четное - все как первое. Если нечетное - то попеременно.

Отклонения возможны только если время от времени тики отжирают другие процессы :)

С рандомом лучше.

А вот инитить рандом тиками - вообще самое то. 
[11:01] 21296772: ну, я всегда предполагаю, что другие процессы существуют и отжирают тики.
[11:01] 21296772: Или не существуют и не отжирают, это рандомально.

Post a comment in response:

If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting