- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
sub random {
srand;
RAND:
my $rand = int(sprintf "%.f", 2 * rand() - 1) ^ int(sprintf "%.f", 2 * rand() - 1);
goto RAND if $rand == 0;
$rand = $rand > 0 ? 1 : 0;
return $rand;
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−260.4
sub random {
srand;
RAND:
my $rand = int(sprintf "%.f", 2 * rand() - 1) ^ int(sprintf "%.f", 2 * rand() - 1);
goto RAND if $rand == 0;
$rand = $rand > 0 ? 1 : 0;
return $rand;
}
шок и паника.
guest 07.06.2009 15:02 # +1
Я перл не знаю но чел походу пытался сгенерить рандом 1/0 офигенно длинным способом xDDDDDDDDDDDDDDDD
guest 03.08.2009 18:34 # +1
#1: Аха, только прыгает на RAND до тех пор пока $rand не будет чем-либо отличным от нуля, а потом, если $rand больше нуля (а меньше он быть не может, вроде как в данной ситуации) присваевает ему 1-цу....
Т.е. генерит-генерит до тех пор, пока не выгенерит единицу :)
guest 11.08.2009 10:05 # +2
guest 11.08.2009 11:52 # +2
int sprintf - тоже бодро :)