diff options
| author | Abigail <abigail@abigail.be> | 2021-06-07 20:10:04 +0200 |
|---|---|---|
| committer | Abigail <abigail@abigail.be> | 2021-06-08 15:47:36 +0200 |
| commit | 5f7b533e8cf34449a3a92a91dadc67856a883660 (patch) | |
| tree | 2623082bdb2d849d7a06388c00c9d02441d6a985 /challenge-116/abigail/node | |
| parent | f08a13f3afd794045d93196c78b2c75f4959bd10 (diff) | |
| download | perlweeklychallenge-club-5f7b533e8cf34449a3a92a91dadc67856a883660.tar.gz perlweeklychallenge-club-5f7b533e8cf34449a3a92a91dadc67856a883660.tar.bz2 perlweeklychallenge-club-5f7b533e8cf34449a3a92a91dadc67856a883660.zip | |
AWK, Bash, C, Lua, Node.js, Perl, Python, Ruby solutions for week 116, part 2.
Diffstat (limited to 'challenge-116/abigail/node')
| -rw-r--r-- | challenge-116/abigail/node/ch-2.js | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/challenge-116/abigail/node/ch-2.js b/challenge-116/abigail/node/ch-2.js new file mode 100644 index 0000000000..c11aa92ad4 --- /dev/null +++ b/challenge-116/abigail/node/ch-2.js @@ -0,0 +1,26 @@ +#!/usr/local/bin/node + +// +// See ../README.md +// + +// +// Run as: node ch-2.js < input-file +// + +require ('readline') +. createInterface ({input: process . stdin}) +. on ('line', _ => console . log (squares_sum_to_square (_))) +; + + +function squares_sum_to_square (line) { + let sum_of_squares = 0 + line . split ('') . forEach (letter => { + if ("0" <= letter && letter <= "9") { + sum_of_squares += + letter * + letter + } + }) + let root = Math . floor (.5 + Math . sqrt (sum_of_squares)) + return (sum_of_squares == root * root ? 1 : 0) +} |
