diff options
| author | Jaldhar H. Vyas <jaldhar@braincells.com> | 2024-06-26 00:07:02 -0400 |
|---|---|---|
| committer | Jaldhar H. Vyas <jaldhar@braincells.com> | 2024-06-25 23:30:05 -0400 |
| commit | 94aa18a809b1efc3e9b2eeef9a890ce7f9ae6c71 (patch) | |
| tree | 667be8676688e614d13241b6d403b8a53c6a68ed | |
| parent | b07b0b03e415426e49e0c43f71de0a27a3cc65a4 (diff) | |
| download | perlweeklychallenge-club-94aa18a809b1efc3e9b2eeef9a890ce7f9ae6c71.tar.gz perlweeklychallenge-club-94aa18a809b1efc3e9b2eeef9a890ce7f9ae6c71.tar.bz2 perlweeklychallenge-club-94aa18a809b1efc3e9b2eeef9a890ce7f9ae6c71.zip | |
Challenge 275 by Jaldhar H. Vyas.
| -rw-r--r-- | challenge-275/jaldhar-h-vyas/blog.txt | 1 | ||||
| -rwxr-xr-x | challenge-275/jaldhar-h-vyas/perl/ch-1.pl | 9 | ||||
| -rwxr-xr-x | challenge-275/jaldhar-h-vyas/perl/ch-2.pl | 19 | ||||
| -rwxr-xr-x | challenge-275/jaldhar-h-vyas/raku/ch-1.raku | 10 | ||||
| -rwxr-xr-x | challenge-275/jaldhar-h-vyas/raku/ch-2.raku | 20 |
5 files changed, 59 insertions, 0 deletions
diff --git a/challenge-275/jaldhar-h-vyas/blog.txt b/challenge-275/jaldhar-h-vyas/blog.txt new file mode 100644 index 0000000000..9b533cbb63 --- /dev/null +++ b/challenge-275/jaldhar-h-vyas/blog.txt @@ -0,0 +1 @@ +https://www.braincells.com/perl/2024/06/perl_weekly_challenge_week_275.html diff --git a/challenge-275/jaldhar-h-vyas/perl/ch-1.pl b/challenge-275/jaldhar-h-vyas/perl/ch-1.pl new file mode 100755 index 0000000000..77b6751d74 --- /dev/null +++ b/challenge-275/jaldhar-h-vyas/perl/ch-1.pl @@ -0,0 +1,9 @@ +#!/usr/bin/perl +use v5.38; + +my $str = shift; +my @keys = @ARGV; + + +my $keys = join q{}, ('[', @keys, ']'); +say scalar grep { $_ !~ /$keys/i } split /\s+/, $str; diff --git a/challenge-275/jaldhar-h-vyas/perl/ch-2.pl b/challenge-275/jaldhar-h-vyas/perl/ch-2.pl new file mode 100755 index 0000000000..0f3f3919e8 --- /dev/null +++ b/challenge-275/jaldhar-h-vyas/perl/ch-2.pl @@ -0,0 +1,19 @@ +#!/usr/bin/perl +use v5.38; + +my $str = shift; + +my @input = split //, $str; +my $output; +my $current; + +for my $c (@input) { + if ($c =~ /\d/) { + $output .= chr(ord($current) + $c); + } else { + $current = $c; + $output .= $c; + } +} + +say $output; diff --git a/challenge-275/jaldhar-h-vyas/raku/ch-1.raku b/challenge-275/jaldhar-h-vyas/raku/ch-1.raku new file mode 100755 index 0000000000..31e492d15e --- /dev/null +++ b/challenge-275/jaldhar-h-vyas/raku/ch-1.raku @@ -0,0 +1,10 @@ +#!/usr/bin/raku + +sub MAIN( + Str $str, + *@keys + ) { + + my $keys = [~] '<[', @keys, ']>'; + $str.words.grep({ $_ !~~ m:i/ <$keys> / }).elems.say; +}
\ No newline at end of file diff --git a/challenge-275/jaldhar-h-vyas/raku/ch-2.raku b/challenge-275/jaldhar-h-vyas/raku/ch-2.raku new file mode 100755 index 0000000000..3e37e00290 --- /dev/null +++ b/challenge-275/jaldhar-h-vyas/raku/ch-2.raku @@ -0,0 +1,20 @@ +#!/usr/bin/raku + +sub MAIN( + Str $str, + ) { + my @input = $str.comb; + my $output; + my $current; + + for @input -> $c { + if $c ~~ /\d/ { + $output ~= chr($current.ord + $c); + } else { + $current = $c; + $output ~= $c; + } + } + + say $output; +}
\ No newline at end of file |
