Dランクをわかりにくく解く
面倒くさいので画面パタメータをListでもらった後のFunctionだけ
ちなみに引数のListを作ってる箇所はこっちの記事に書いてあるYO!!
add.js
// [問題文(原文)]
// 2つの正の整数 a, b が半角スペース区切りで入力されるので a と b を足した数を出力してください。
// ※「掛け算」の問題では入力が改行区切りで与えられましたが、今回は半角スペース区切りで与えられます。
function add(lines) {
if (!Array.isArray(lines) || lines.length !== 1) {
console.log("1行入れろや!");
return;
}
const vals = lines[0].split(" ");
if (vals.length !== 2) {
console.log("値をスペース区切りで2つ入れろや!");
return;
}
if (!vals.every(line => {
const num = Number(line);
return Number.isInteger(num) && num >= 0 && num <= 100
})) {
console.log("0~100の整数入れろや!");
return;
}
// mapでNumberに変換してからreduceを使って、なんかいい感じに難読で書いてみる
console.log(vals.map(v => Number(v)).reduce((accumulator, currentValue) => accumulator + currentValue, 0));
}
module.exports = {
add
};
普通に vals[0] + vals[1]でいいじゃんとか思ったけど、
それだと芸がなかったので小難しく書いてみた。