aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbigail <abigail@abigail.be>2021-01-12 13:50:26 +0100
committerAbigail <abigail@abigail.be>2021-01-12 13:50:26 +0100
commitbf10a659e60a77df908278b48c949f31f01cdb68 (patch)
treebfd98a76d396f8b4a9453bcda7ad03025063d734
parente32408fed50a30c6f9edbaa457b665e0350db798 (diff)
downloadperlweeklychallenge-club-bf10a659e60a77df908278b48c949f31f01cdb68.tar.gz
perlweeklychallenge-club-bf10a659e60a77df908278b48c949f31f01cdb68.tar.bz2
perlweeklychallenge-club-bf10a659e60a77df908278b48c949f31f01cdb68.zip
AWK solution for week 95, part 1.
-rw-r--r--challenge-095/abigail/awk/ch-1.awk28
-rw-r--r--challenge-095/abigail/t/ctest.ini6
2 files changed, 34 insertions, 0 deletions
diff --git a/challenge-095/abigail/awk/ch-1.awk b/challenge-095/abigail/awk/ch-1.awk
new file mode 100644
index 0000000000..e198996b20
--- /dev/null
+++ b/challenge-095/abigail/awk/ch-1.awk
@@ -0,0 +1,28 @@
+{
+ #
+ # Initialize
+ #
+ is_palindrome = 0
+}
+
+/^[0-9]+(\.[0-9]+)?$/ {
+ #
+ # If it looks like an unsigned number, check whether
+ # it's a palindrome.
+ #
+ is_palindrome = 1
+ for (i = 1; i <= length / 2; i ++) {
+ s1 = substr($0, i, 1)
+ s2 = substr($0, length - i + 1, 1)
+ if (s1 != s2) {
+ is_palindrome = 0
+ }
+ }
+}
+
+{
+ #
+ # Print result
+ #
+ print is_palindrome
+}
diff --git a/challenge-095/abigail/t/ctest.ini b/challenge-095/abigail/t/ctest.ini
index 3712da6655..250efe85a4 100644
--- a/challenge-095/abigail/t/ctest.ini
+++ b/challenge-095/abigail/t/ctest.ini
@@ -15,3 +15,9 @@ skip = No Unicode support
[1-5/c]
skip = No Unicode support
+
+[1-4/awk]
+skip = No Unicode support
+
+[1-5/awk]
+skip = No Unicode support