aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Ferrone <zapwai@gmail.com>2025-07-21 09:42:29 -0400
committerGitHub <noreply@github.com>2025-07-21 09:42:29 -0400
commitd6b3596bd40ccb603c4f2ba567288dd770cd6318 (patch)
treee6bb056ae3d96ac60ac7a5eaf3da7f1511cbfaf4
parente0f7e800fc8f1b2cb50896852a0a3ed61980f510 (diff)
downloadperlweeklychallenge-club-d6b3596bd40ccb603c4f2ba567288dd770cd6318.tar.gz
perlweeklychallenge-club-d6b3596bd40ccb603c4f2ba567288dd770cd6318.tar.bz2
perlweeklychallenge-club-d6b3596bd40ccb603c4f2ba567288dd770cd6318.zip
Week 331
-rw-r--r--challenge-331/zapwai/perl/ch-1.pl13
-rw-r--r--challenge-331/zapwai/perl/ch-2.pl34
2 files changed, 47 insertions, 0 deletions
diff --git a/challenge-331/zapwai/perl/ch-1.pl b/challenge-331/zapwai/perl/ch-1.pl
new file mode 100644
index 0000000000..a36cd2d84b
--- /dev/null
+++ b/challenge-331/zapwai/perl/ch-1.pl
@@ -0,0 +1,13 @@
+use v5.38;
+sub proc($str) {
+ say "Input: $str";
+ my @word = split " ", $str;
+ say "Output: ".length($word[$#word]);
+}
+
+my $str = "The Weekly Challenge";
+proc($str);
+$str = " Hello World ";
+proc($str);
+$str = "Let's begin the fun";
+proc($str);
diff --git a/challenge-331/zapwai/perl/ch-2.pl b/challenge-331/zapwai/perl/ch-2.pl
new file mode 100644
index 0000000000..805e58d7b5
--- /dev/null
+++ b/challenge-331/zapwai/perl/ch-2.pl
@@ -0,0 +1,34 @@
+use v5.38;
+sub swappy($src, $tar) {
+ my @s = split '', $src;
+ for my $i (0 .. $#s - 1) {
+ my @new = @s;
+ my $a = $new[$i];
+ $new[$i] = $new[$i+1];
+ $new[$i+1] = $a;
+ my $news = join '', @new;
+ return 1 if ($news eq $tar);
+ }
+ return 0;
+}
+
+sub proc($src, $tar) {
+ say "Input: $src, $tar";
+ if (swappy($src, $tar)) {
+ say "Output: true";
+ } else {
+ say "Output: false";
+ }
+}
+
+my $src = "fcuk";
+my $tar = "fuck";
+proc($src, $tar);
+
+$src = "love";
+$tar = "love";
+proc($src, $tar);
+
+$src = "fodo";
+$tar = "food";
+proc($src, $tar);