Portál AbcLinuxu, 10. května 2025 05:58
Ahoj, funkcí rand(11) si nechám vygenerovat číslo. Třeba 4.75629835698753. Mě zatímá ta čtverka, a sedmička. K tomu abych si do proměné uložil 4 mě napadlo ($x,$y) = split(/./,rand(11)); což bohužel nefunguje. Jak se dostat k té semičce mě ještě nenapadlo má někdo nějaký rozumný nápad?
my $x = rand(11); print $x, "\n"; print int($x * 10), "\n"; print substr($x * 10, 0, 2), "\n";
Díky, tohle jsem si neuvědomil. Teprve se snažím perl učit...
Podle mého, když tedy rand hází řetězec, stačí ho osekat fcí substr a je vymalováno. Jsou tam mouchy jako když rand vygeneruje 10.něco a ořezáním dostanu 1... Ale to nevadí, to se zpraví
$rand = rand 11; $x = substr $rand, 0, index $rand, '.'; $y = substr $rand, index ($rand, '.') + 1, 1;
($x,$y) = split(/\./,rand(11));
my $rand = int rand 110; $x = int $rand / 10; $y = $rand % 10;
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.