RosettaCodeData/Task/Linear-congruential-generator/Perl-6/linear-congruential-generator.pl6
2016-12-05 22:15:40 +01:00

15 lines
340 B
Raku

constant modulus = 2**31;
sub bsd {
$^seed, ( 1103515245 * * + 12345 ) % modulus ... *
}
sub ms {
map * +> 16, (
$^seed, ( 214013 * * + 2531011 ) % modulus ... *
)
}
say 'BSD LCG first 10 values (first one is the seed):';
.say for bsd(0)[^10];
say "\nMS LCG first 10 values (first one is the seed):";
.say for ms(0)[^10];