diff options
| author | 冯昶 <seaker@qq.com> | 2020-08-21 16:12:58 +0800 |
|---|---|---|
| committer | 冯昶 <seaker@qq.com> | 2020-08-21 16:12:58 +0800 |
| commit | e4bb19d767bff01ce22546029603afe3b690cf09 (patch) | |
| tree | 96f99f834d01dae9a265534ed0f8ec313a925f88 /challenge-072 | |
| parent | f35df0a84832788ae2e786e83c0de3504b2f9b0f (diff) | |
| parent | b1cad7fa2c0c1a87309a90f8b6be2b7a38aace5d (diff) | |
| download | perlweeklychallenge-club-e4bb19d767bff01ce22546029603afe3b690cf09.tar.gz perlweeklychallenge-club-e4bb19d767bff01ce22546029603afe3b690cf09.tar.bz2 perlweeklychallenge-club-e4bb19d767bff01ce22546029603afe3b690cf09.zip | |
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'challenge-072')
| -rw-r--r-- | challenge-072/ash/blog1.txt | 1 | ||||
| -rwxr-xr-x | challenge-072/mohammad-anwar/perl/ch-1.pl | 2 | ||||
| -rwxr-xr-x | challenge-072/mohammad-anwar/perl/ch-1a.pl | 2 | ||||
| -rwxr-xr-x | challenge-072/mohammad-anwar/perl/ch-2.pl | 10 | ||||
| -rwxr-xr-x | challenge-072/mohammad-anwar/raku/ch-1.raku | 2 | ||||
| -rwxr-xr-x | challenge-072/mohammad-anwar/raku/ch-1a.raku | 2 | ||||
| -rwxr-xr-x | challenge-072/mohammad-anwar/raku/ch-2.raku | 4 | ||||
| -rwxr-xr-x | challenge-072/mohammad-anwar/raku/ch-2a.raku | 4 |
8 files changed, 14 insertions, 13 deletions
diff --git a/challenge-072/ash/blog1.txt b/challenge-072/ash/blog1.txt new file mode 100644 index 0000000000..2bee318da2 --- /dev/null +++ b/challenge-072/ash/blog1.txt @@ -0,0 +1 @@ +https://perlweeklychallenge.org/blog/p6-review-challenge-072/ diff --git a/challenge-072/mohammad-anwar/perl/ch-1.pl b/challenge-072/mohammad-anwar/perl/ch-1.pl index bba4e1bcd7..872bf70081 100755 --- a/challenge-072/mohammad-anwar/perl/ch-1.pl +++ b/challenge-072/mohammad-anwar/perl/ch-1.pl @@ -30,7 +30,7 @@ sub trailing_zeroes { $n *= $_ for 1..$n-1; # count trailing zeroes - $n =~ m/[1-9]?([0]+)/; + $n =~ m/[1-9]?([0]+)$/; return (defined $1)?(length($1)):(0); } diff --git a/challenge-072/mohammad-anwar/perl/ch-1a.pl b/challenge-072/mohammad-anwar/perl/ch-1a.pl index 2aa98b1ab5..2b02ba5b9a 100755 --- a/challenge-072/mohammad-anwar/perl/ch-1a.pl +++ b/challenge-072/mohammad-anwar/perl/ch-1a.pl @@ -24,7 +24,7 @@ sub count { $n *= $_ for 1..$n-1; # count trailing zeroes - $n =~ m/[1-9]?([0]+)/; + $n =~ m/[1-9]?([0]+)$/; return (defined $1)?(length($1)):(0); } diff --git a/challenge-072/mohammad-anwar/perl/ch-2.pl b/challenge-072/mohammad-anwar/perl/ch-2.pl index f70396b76f..fe1c1d817d 100755 --- a/challenge-072/mohammad-anwar/perl/ch-2.pl +++ b/challenge-072/mohammad-anwar/perl/ch-2.pl @@ -15,7 +15,7 @@ my $F = $ARGV[0]; my $A = $ARGV[1]; my $B = $ARGV[2]; -print lines_range($F, $A, $B), "\n"; +lines_range($F, $A, $B); # # @@ -25,13 +25,13 @@ sub lines_range { my ($file, $a, $b) = @_; die "ERROR: Invalid file [$file].\n" unless (-e $file && -f _ && -r _ && -T _); - die "ERROR: Missing A.\n" unless defined $A; - die "ERROR: Missing B.\n" unless defined $B; - die "ERROR: Invalid range [$A \- $B].\n" unless ($A <= $B); + die "ERROR: Missing A.\n" unless defined $a; + die "ERROR: Missing B.\n" unless defined $b; + die "ERROR: Invalid range [$a \- $b].\n" unless ($a <= $b); open(my $F, "<", $file) || die "ERROR: Failed to open [$!]\n"; my @lines = <$F>; close($F); - print $lines[$_] for $A-1..$B-1; + print $lines[$_] for --$a..--$b; } diff --git a/challenge-072/mohammad-anwar/raku/ch-1.raku b/challenge-072/mohammad-anwar/raku/ch-1.raku index abdff9e6bf..f4aa526ba2 100755 --- a/challenge-072/mohammad-anwar/raku/ch-1.raku +++ b/challenge-072/mohammad-anwar/raku/ch-1.raku @@ -22,7 +22,7 @@ sub find-trailing-zeroes(Int $N is copy where $N <= 10) { $N *= $_ for 1..$N-1; # match trailing zeroes - my $trailing-zeroes = $N ~~ m/ <[1..9]>?(<[0]>+) /; + my $trailing-zeroes = $N ~~ m/ <[1..9]>?(<[0]>+)$ /; return ($trailing-zeroes) diff --git a/challenge-072/mohammad-anwar/raku/ch-1a.raku b/challenge-072/mohammad-anwar/raku/ch-1a.raku index dbcf9532a1..24e46efb14 100755 --- a/challenge-072/mohammad-anwar/raku/ch-1a.raku +++ b/challenge-072/mohammad-anwar/raku/ch-1a.raku @@ -37,7 +37,7 @@ sub find-trailing-zeroes(Int $N is copy where $N <= 10) { $N *= $_ for 1..$N-1; # match trailing zeroes - my $trailing-zeroes = $N ~~ m/ <[1..9]>?(<[0]>+) /; + my $trailing-zeroes = $N ~~ m/ <[1..9]>?(<[0]>+)$ /; return ($trailing-zeroes) diff --git a/challenge-072/mohammad-anwar/raku/ch-2.raku b/challenge-072/mohammad-anwar/raku/ch-2.raku index 2e42757eaa..2618eb921e 100755 --- a/challenge-072/mohammad-anwar/raku/ch-2.raku +++ b/challenge-072/mohammad-anwar/raku/ch-2.raku @@ -17,10 +17,10 @@ sub MAIN(Str :$file where *.IO.f, lines-range($file, $A, $B).join("\n").say; } -sub lines-range(Str $file, Int $A, Int $B) { +sub lines-range(Str $file, Int $A is copy, Int $B is copy) { my @lines = Empty; - for $A-1 .. $B-1 -> $i { + for --$A .. --$B -> $i { @lines.push: $file.IO.lines[$i]; } diff --git a/challenge-072/mohammad-anwar/raku/ch-2a.raku b/challenge-072/mohammad-anwar/raku/ch-2a.raku index fa477ce6ce..add1a325e4 100755 --- a/challenge-072/mohammad-anwar/raku/ch-2a.raku +++ b/challenge-072/mohammad-anwar/raku/ch-2a.raku @@ -27,10 +27,10 @@ for @test-cases -> $test { done-testing; -sub lines-range(Str $file, Int $A, Int $B) { +sub lines-range(Str $file, Int $A is copy, Int $B is copy) { my @lines = Empty; - for $A-1 .. $B-1 -> $i { + for --$A .. --$B -> $i { @lines.push: $file.IO.lines[$i]; } |
