首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我的代码通过了我的所有测试,但是有些代码没有批准它。

我的代码通过了我的所有测试,但是有些代码没有批准它。
EN

Stack Overflow用户
提问于 2022-01-19 06:17:17
回答 1查看 95关注 0票数 1
代码语言:javascript
运行
复制
function bitwiseAND(n1, n2) {
  let a = n1.toString(2).padStart(8, "0");
  let b = n2.toString(2).padStart(8, "0");
  let x = "";
  for (let i = 0; i < 8; i++) {
     if (+a[i] === 1 && +a[i] === +b[i]) x = x + "1";
     else x = x + "0";
}
return +x
}

function bitwiseOR(n1, n2) {
  let a = n1.toString(2).padStart(8, "0");
  let b = n2.toString(2).padStart(8, "0");
  let x = "";
  for (let i = 0; i < 8; i++) {
    if (+a[i] === 1 || +b[i] === 1) x = x + "1";
    else x = x + "0";
}
return +x
}

function bitwiseXOR(n1, n2) {
  let a = n1.toString(2).padStart(8, "0");
  let b = n2.toString(2).padStart(8, "0");
  let x = "";
  for (let i = 0; i < 8; i++) {
    if ((+a[i] === 1 && +b[i] === 0) || (+a[i] === 0 && +b[i] === 1))
      x = x + "1";
    else x = x + "0";
}
return +x
}

这是与挑战的链接。

挑战是编写三个函数来计算两个数字的按位或、位或和位异或。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-01-19 07:33:42

您的代码很好,唯一缺少的就是在返回值上将二进制转换为整数。

.的

代码语言:javascript
运行
复制
return +x

试一试

代码语言:javascript
运行
复制
return parseInt(x, 2)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70766038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档