在 JavaScript 中找到一个数位与和的差


这里要求我们写一个 JavaScript 函数,其仅将一个正整数作为唯一参数。

该函数应首先计算该数字各个位数的和,然后计算它们的乘积。最后,该函数应返回该乘积和该和的绝对差值。

例如:

如果输入数字为:

const num = 12345;

那么输出应为:

const output = 105;

示例

以下为该代码:

const num = 12345;
const product = (num, res = 1) => {
   if(num){
      return product(Math.floor(num / 10), res * (num % 10));
   }
   return res;
};
const sum = (num, res = 0) => {
   if(num){
      return sum(Math.floor(num / 10), res + (num % 10));
   }
   return res;
};
const productSumDifference = (num = 1) => {
   return Math.abs(product(num) - sum(num));
};
console.log(productSumDifference(num));

输出

以下为控制台输出:

105

更新于: 20-Jan-2021

238 次浏览

启动您的职业生涯

完成课程可获得认证

开始吧
广告