diff options
| author | 冯昶 <fengchang@novel-supertv.com> | 2024-01-08 14:54:58 +0800 |
|---|---|---|
| committer | 冯昶 <fengchang@novel-supertv.com> | 2024-01-08 14:54:58 +0800 |
| commit | e019e6886d406f9e111e67cb1cdbe39ec996bb2a (patch) | |
| tree | 7614dde91435b882f70c83213fb5c7301bed12bc /challenge-246 | |
| parent | e94f52525bf99cded9ba76e696b691c7a657500b (diff) | |
| parent | 9a485c9bac8e3887b165d67c9aa81d71cdd42f01 (diff) | |
| download | perlweeklychallenge-club-e019e6886d406f9e111e67cb1cdbe39ec996bb2a.tar.gz perlweeklychallenge-club-e019e6886d406f9e111e67cb1cdbe39ec996bb2a.tar.bz2 perlweeklychallenge-club-e019e6886d406f9e111e67cb1cdbe39ec996bb2a.zip | |
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'challenge-246')
| -rw-r--r-- | challenge-246/adam-russell/perl/ch-1.pl | 22 | ||||
| -rw-r--r-- | challenge-246/bob-lied/perl/ch-1.pl | 10 | ||||
| -rw-r--r-- | challenge-246/roger-bell-west/blog.txt | 1 | ||||
| -rw-r--r-- | challenge-246/sgreen/README.md | 3 |
4 files changed, 32 insertions, 4 deletions
diff --git a/challenge-246/adam-russell/perl/ch-1.pl b/challenge-246/adam-russell/perl/ch-1.pl new file mode 100644 index 0000000000..b462c6e959 --- /dev/null +++ b/challenge-246/adam-russell/perl/ch-1.pl @@ -0,0 +1,22 @@ +use v5.38; +## +# 6 out of 49 is a German lottery. +# Write a script that outputs six unique random integers from the range 1 to 49. +## +package SixOfFourtyNine{ + use Math::Random::Secure q/irand/; + sub pick_six{ + my @six; + { + my $r = irand(49) + 1; + push @six, $r if 0 == grep {$_ == $r} @six; + redo unless @six == 6; + } + return sort {$a <=> $b} @six; + } + +} + +package main{ + say join q/, /, SixOfFourtyNine::pick_six; +} diff --git a/challenge-246/bob-lied/perl/ch-1.pl b/challenge-246/bob-lied/perl/ch-1.pl index 394f4db426..56b1ae4e26 100644 --- a/challenge-246/bob-lied/perl/ch-1.pl +++ b/challenge-246/bob-lied/perl/ch-1.pl @@ -10,4 +10,12 @@ #============================================================================= use feature qw/say/; -say for sort { $a <=> $b} map { int(rand(49)) + 1 } 1..6; + +# Choose six numbers without repeats +my %seen; +while ( scalar(keys %seen) < 6 ) +{ + $seen{ int(rand(49)) + 1 } = 1; +} + +say for sort { $a <=> $b } keys %seen; diff --git a/challenge-246/roger-bell-west/blog.txt b/challenge-246/roger-bell-west/blog.txt new file mode 100644 index 0000000000..0f5c0a56cb --- /dev/null +++ b/challenge-246/roger-bell-west/blog.txt @@ -0,0 +1 @@ +https://blog.firedrake.org/archive/2023/12/The_Weekly_Challenge_246__Linear_49.html diff --git a/challenge-246/sgreen/README.md b/challenge-246/sgreen/README.md deleted file mode 100644 index fb592c5c30..0000000000 --- a/challenge-246/sgreen/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# The Weekly Challenge 244 - -Blog: [Weekly Challenge 244](https://dev.to/simongreennet/weekly-challenge-244-jim) |
