diff options
| author | Abigail <abigail@abigail.be> | 2021-11-01 21:03:55 +0100 |
|---|---|---|
| committer | Abigail <abigail@abigail.be> | 2021-11-01 21:03:55 +0100 |
| commit | 6e30de0aa5b931e7cef2cbff5dd53612c35bd993 (patch) | |
| tree | 93f5e17f8a9edb8b73c3e5e33dfb38b38c0a637f | |
| parent | 774aa553d53dccf2c51f3ce6da319c45c7b398c1 (diff) | |
| download | perlweeklychallenge-club-6e30de0aa5b931e7cef2cbff5dd53612c35bd993.tar.gz perlweeklychallenge-club-6e30de0aa5b931e7cef2cbff5dd53612c35bd993.tar.bz2 perlweeklychallenge-club-6e30de0aa5b931e7cef2cbff5dd53612c35bd993.zip | |
Node.js solutions for week 137
| -rw-r--r-- | challenge-137/abigail/node/ch-1.js | 40 | ||||
| -rw-r--r-- | challenge-137/abigail/node/ch-2.js | 30 |
2 files changed, 70 insertions, 0 deletions
diff --git a/challenge-137/abigail/node/ch-1.js b/challenge-137/abigail/node/ch-1.js new file mode 100644 index 0000000000..a744551341 --- /dev/null +++ b/challenge-137/abigail/node/ch-1.js @@ -0,0 +1,40 @@ +#!/usr/local/bin/node + +// +// See ../README.md +// + +// +// Run as: node ch-1.js +// + + +let start_years = [1600, 2000] +let long_year_offsets = [ + 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 +] + + +start_years . forEach (start_year => { + long_year_offsets . forEach (offset => { + let year = start_year + offset + if (1900 <= year && year <= 2100) { + console . log (year) + } + }) +}) diff --git a/challenge-137/abigail/node/ch-2.js b/challenge-137/abigail/node/ch-2.js new file mode 100644 index 0000000000..75eef836c8 --- /dev/null +++ b/challenge-137/abigail/node/ch-2.js @@ -0,0 +1,30 @@ +#!/usr/local/bin/node + +// +// See ../README.md +// + +// +// Run as: node ch-2.js < input-file +// + +function reverse (num) { + let rev = 0 + while (num > 0) { + rev *= 10 + rev += num % 10 + num = Math . floor (num / 10) + } + return (rev) +} + +function ly (n) { + return n >= 10000000 ? 1 + : n == reverse (n) ? 0 + : ly (n + reverse (n)) +} + + require ('readline') +. createInterface ({input: process . stdin}) +. on ('line', num => console . log (ly (+num))) + |
