首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使5mod5=5而不是0?

如何使5mod5=5而不是0?
EN

Stack Overflow用户
提问于 2017-02-28 07:14:29
回答 5查看 402关注 0票数 0

我正在编写一个使用mod 5的程序。

所以我将输入的数字除以5,然后返回余数。

代码语言:javascript
运行
复制
var mod5 = function (xx) {
     var mod = 5;
     return ((xx % 5) + 5) % 5;
}

因此,6 = 14 = 48 = 3

通过遵循该规则,所有可被5 = 0整除的事物,

为了让我的程序5, 10, 15, 20 ... mod 5工作,all必须= 5而不是0

但所有其他数字都需要保持不变。要做到这一点,最简单的方法是什么?

另外,我对编程非常陌生,如果这没有意义,我很抱歉。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2017-02-28 07:19:02

代码语言:javascript
运行
复制
var mod5 = function (xx) {
  return (xx % 5) || 5
}

如果不是0,此函数将返回xx mod 5,否则将返回5,更多说明:

xx % 5将产生-4到4 -4 <= xx % 5 <= 4之间的任何数字,然后,OR logical operator将该结果与数字5进行比较,OR逻辑运算符的工作方式如下:

如果运算符左侧的值是truetruthy,它将独立于右侧的值返回。

如果右边的值是true或truthy,左边的值是falsefalsy,则会返回。

否则,如果值都不是true或the,则返回false

此时仅当xx不是5的倍数时才返回xx % 5,否则返回5。

希望这能有所帮助:)

票数 5
EN

Stack Overflow用户

发布于 2017-02-28 07:18:01

代码语言:javascript
运行
复制
function mod5(x) {
  var result = x % 5; 
  if (result === 0) return 5;
  return result;
}

根据你的要求,任何可以被5整除的东西都会得到5,其他的都是不变的。

票数 2
EN

Stack Overflow用户

发布于 2017-02-28 07:18:14

代码语言:javascript
运行
复制
var mod5 = function (xx) {
    var mod = xx % 5;
    if(mod == 0) 
        return 5;
    else 
        return mod;
}

看起来很简单,如果模5是0,那么就返回5。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42497520

复制
相关文章

相似问题

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