You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何对二进制转十进制函数返回值的每一位平方后求和?

解决方案

实现思路

  • 将十进制数字转为字符串,拆分出每一位字符
  • 把每一位字符转为数字后计算平方
  • 累加所有平方值得到结果

完整代码示例

假设你的二进制转十进制函数如下,我们整合平方求和功能:

// 二进制转十进制函数(你已实现的部分)
function binaryToDecimal(binaryStr) {
  return parseInt(binaryStr, 2);
}

// 计算十进制数每一位平方和的函数
function calculateDigitSquareSum(num) {
  // 转字符串拆分每一位,遍历累加平方值
  return num.toString().split('').reduce((total, digit) => {
    const currentNum = Number(digit);
    return total + currentNum * currentNum;
  }, 0);
}

// 调用示例
const binaryInput = '100110'; // 对应十进制38
const decimalNum = binaryToDecimal(binaryInput);
const squareSum = calculateDigitSquareSum(decimalNum);
console.log(squareSum); // 输出73

代码说明

  • num.toString().split(''):把数字转为字符串后拆分为单个字符的数组,比如38会变成['3','8']
  • reduce方法:遍历数组,初始化累加值为0,每次把当前数字的平方加到累加值中
  • 若输入数字为0,代码也能正确返回0,无需额外特殊处理

内容的提问来源于stack exchange,提问作者codAction

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 11:29:57