diff options
| author | Jaldhar H. Vyas <jaldhar@braincells.com> | 2020-08-07 02:12:05 -0400 |
|---|---|---|
| committer | Jaldhar H. Vyas <jaldhar@braincells.com> | 2020-08-07 02:12:05 -0400 |
| commit | ca42dd82d609e91fc5e9a8742d936e61fc8ecfa8 (patch) | |
| tree | 98c1ccbd10a7d5631f6f82886fc52f6bd193eda7 | |
| parent | 94726265299352e69d053c5ef4f9b25b55b468db (diff) | |
| download | perlweeklychallenge-club-ca42dd82d609e91fc5e9a8742d936e61fc8ecfa8.tar.gz perlweeklychallenge-club-ca42dd82d609e91fc5e9a8742d936e61fc8ecfa8.tar.bz2 perlweeklychallenge-club-ca42dd82d609e91fc5e9a8742d936e61fc8ecfa8.zip | |
Challenge 72 by Jaldhar H. Vyas
| -rw-r--r-- | challenge-072/jaldhar-h-vyas/blog.txt | 1 | ||||
| -rw-r--r-- | challenge-072/jaldhar-h-vyas/input.txt | 100 | ||||
| -rwxr-xr-x | challenge-072/jaldhar-h-vyas/perl/ch-1.pl | 27 | ||||
| -rwxr-xr-x | challenge-072/jaldhar-h-vyas/perl/ch-2.pl | 37 | ||||
| -rwxr-xr-x | challenge-072/jaldhar-h-vyas/raku/ch-1.p6 | 8 | ||||
| -rwxr-xr-x | challenge-072/jaldhar-h-vyas/raku/ch-2.p6 | 10 |
6 files changed, 183 insertions, 0 deletions
diff --git a/challenge-072/jaldhar-h-vyas/blog.txt b/challenge-072/jaldhar-h-vyas/blog.txt new file mode 100644 index 0000000000..f2a3962b0b --- /dev/null +++ b/challenge-072/jaldhar-h-vyas/blog.txt @@ -0,0 +1 @@ +https://www.braincells.com/perl/2020/08/perl_weekly_challenge_week_72.html diff --git a/challenge-072/jaldhar-h-vyas/input.txt b/challenge-072/jaldhar-h-vyas/input.txt new file mode 100644 index 0000000000..e5a15512e0 --- /dev/null +++ b/challenge-072/jaldhar-h-vyas/input.txt @@ -0,0 +1,100 @@ +L1 +L2 +L3 +L4 +L5 +L6 +L7 +L8 +L9 +L10 +L11 +L12 +L13 +L14 +L15 +L16 +L17 +L18 +L19 +L20 +L21 +L22 +L23 +L24 +L25 +L26 +L27 +L28 +L29 +L30 +L31 +L32 +L33 +L34 +L35 +L36 +L37 +L38 +L39 +L40 +L41 +L42 +L43 +L44 +L45 +L46 +L47 +L48 +L49 +L50 +L51 +L52 +L53 +L54 +L55 +L56 +L57 +L58 +L59 +L60 +L61 +L62 +L63 +L64 +L65 +L66 +L67 +L68 +L69 +L70 +L71 +L72 +L73 +L74 +L75 +L76 +L77 +L78 +L79 +L80 +L81 +L82 +L83 +L84 +L85 +L86 +L87 +L88 +L89 +L90 +L91 +L92 +L93 +L94 +L95 +L96 +L97 +L98 +L99 +L100 diff --git a/challenge-072/jaldhar-h-vyas/perl/ch-1.pl b/challenge-072/jaldhar-h-vyas/perl/ch-1.pl new file mode 100755 index 0000000000..db23a0b592 --- /dev/null +++ b/challenge-072/jaldhar-h-vyas/perl/ch-1.pl @@ -0,0 +1,27 @@ +#!/usr/bin/perl +use 5.020; +use warnings; +use English qw/ -no_match_vars /; + +sub usage { +print<<"-USAGE-"; +Usage: + $PROGRAM_NAME <N> + + <N> number to factorialize and count trailing 0's (1 - 10) +-USAGE- + exit 0; +} + +my $N = shift // usage(); +if ($N < 1 || $N > 10) { + usage(); +} +my $factorial = 1; + +for my $i (2 .. $N) { + $factorial *= $i; +} + +$factorial =~ /(0+)$/; +say length $1 // 0;
\ No newline at end of file diff --git a/challenge-072/jaldhar-h-vyas/perl/ch-2.pl b/challenge-072/jaldhar-h-vyas/perl/ch-2.pl new file mode 100755 index 0000000000..578bd02aec --- /dev/null +++ b/challenge-072/jaldhar-h-vyas/perl/ch-2.pl @@ -0,0 +1,37 @@ +#!/usr/bin/perl +use 5.020; +use warnings; +use English qw/ -no_match_vars /; + +sub usage { + print<<"-USAGE-"; +Usage: + $PROGRAM_NAME <A> <B> <file> + + <A> start line + <B> end line + <file> file name +-USAGE- + exit 0; +} + +if (scalar @ARGV < 3) { + usage(); +} + +my ($A, $B, $file) = @ARGV; +my $linenumber = 0; + +open my $fn, '<', $file or die "$OS_ERROR\n"; +while (my $line = <$fn>) { + $linenumber++; + if ($linenumber > $B) { + last; + } + if ($linenumber < $A) { + next; + } + print $line; + +} +close $fn;
\ No newline at end of file diff --git a/challenge-072/jaldhar-h-vyas/raku/ch-1.p6 b/challenge-072/jaldhar-h-vyas/raku/ch-1.p6 new file mode 100755 index 0000000000..aaf824ed54 --- /dev/null +++ b/challenge-072/jaldhar-h-vyas/raku/ch-1.p6 @@ -0,0 +1,8 @@ +#!/usr/bin/perl6 + +sub MAIN( + Int $N #= number to factorialize and count trailing 0's (1 - 10) + where { $N ~~ any 1 .. 10} +) { + (([*] 1 .. $N) ~~ / <(0+)> $ / // q{}).chars.say; +}
\ No newline at end of file diff --git a/challenge-072/jaldhar-h-vyas/raku/ch-2.p6 b/challenge-072/jaldhar-h-vyas/raku/ch-2.p6 new file mode 100755 index 0000000000..e54109f47b --- /dev/null +++ b/challenge-072/jaldhar-h-vyas/raku/ch-2.p6 @@ -0,0 +1,10 @@ +#!/usr/bin/perl6 + +sub MAIN( + $A, #= start line + $B, #= end line + $file #= file name + where { $A > 0 && $A <= $B} +) { + .say for $file.IO.lines[$A - 1 .. $B - 1]; +}
\ No newline at end of file |
