From 0caafd52c1ce972b7fea39b7817130a3cbd0ab55 Mon Sep 17 00:00:00 2001 From: Abigail Date: Tue, 2 Nov 2021 13:07:05 +0100 Subject: Go solutions for week 137 --- challenge-137/abigail/go/ch-1.go | 44 ++++++++++++++++++++++++++++++++++++++++ challenge-137/abigail/go/ch-2.go | 40 ++++++++++++++++++++++++++++++++++++ 2 files changed, 84 insertions(+) create mode 100644 challenge-137/abigail/go/ch-1.go create mode 100644 challenge-137/abigail/go/ch-2.go 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)) + } +} -- cgit