aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-137/abigail/go/ch-1.go44
-rw-r--r--challenge-137/abigail/go/ch-2.go40
2 files changed, 84 insertions, 0 deletions
diff --git a/challenge-137/abigail/go/ch-1.go b/challenge-137/abigail/go/ch-1.go
new file mode 100644
index 0000000000..2e6c515d0d
--- /dev/null
+++ b/challenge-137/abigail/go/ch-1.go
@@ -0,0 +1,44 @@
+package main
+
+//
+// See ../README.md
+//
+
+//
+// Run as: go run ch-1.go
+//
+
+import (
+ "fmt"
+)
+
+func main () {
+ start_years := [] int {1600, 2000}
+ long_year_offsets := [] int {
+ 4, 9, 15, 20, 26,
+ 32, 37, 43, 48, 54,
+ 60, 65, 71, 76, 82,
+ 88, 93, 99,
+ 105, 111, 116, 122,
+ 128, 133, 139, 144, 150,
+ 156, 161, 167, 172, 178,
+ 184, 189, 195,
+ 201, 207, 212, 218,
+ 224, 229, 235, 240, 246,
+ 252, 257, 263, 268, 274,
+ 280, 285, 291, 296,
+ 303, 308, 314,
+ 320, 325, 331, 336, 342,
+ 348, 353, 359, 364, 370,
+ 376, 381, 387, 392, 398,
+ }
+
+ for _, start_year := range start_years {
+ for _, offset := range long_year_offsets {
+ year := start_year + offset
+ if 1900 <= year && year <= 2100 {
+ fmt . Println (year)
+ }
+ }
+ }
+}
diff --git a/challenge-137/abigail/go/ch-2.go b/challenge-137/abigail/go/ch-2.go
new file mode 100644
index 0000000000..31815d21aa
--- /dev/null
+++ b/challenge-137/abigail/go/ch-2.go
@@ -0,0 +1,40 @@
+package main
+
+//
+// See ../README.md
+//
+
+//
+// Run as: go run ch-2.go < input-file
+//
+
+import (
+ "fmt"
+)
+
+func reverse (num int) int {
+ rev := 0
+ for num > 0 {
+ rev *= 10
+ rev += num % 10
+ num /= 10
+ }
+ return rev
+}
+
+func ly (n int) int {
+ if n >= 10000000 {return 1}
+ if n == reverse (n) {return 0}
+ return ly (n + reverse (n))
+}
+
+func main () {
+ for {
+ var num int
+ n, err := fmt . Scanf ("%d", &num)
+ if n != 1 || err != nil {
+ break
+ }
+ fmt . Println (ly (num))
+ }
+}