- 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;
}
шок и паника.
Я перл не знаю но чел походу пытался сгенерить рандом 1/0 офигенно длинным способом xDDDDDDDDDDDDDDDD
#1: Аха, только прыгает на RAND до тех пор пока $rand не будет чем-либо отличным от нуля, а потом, если $rand больше нуля (а меньше он быть не может, вроде как в данной ситуации) присваевает ему 1-цу....
Т.е. генерит-генерит до тех пор, пока не выгенерит единицу :)
int sprintf - тоже бодро :)