检查模数1(checking number modulo 1)

我看到以下内容: if (n % 1 || n < 2) ...在某些代码中

问题是测试n % 1有什么好处? 我认为对于所有非零整数都是(false)0,在这种情况下,将它与任何东西分离是毫无意义的,因为它等价于它的分离( (false || p) == p ,对吗?)。 它检查数字是否为整数? 是!isNaN(n)的快捷方式吗?


I saw the following: if (n % 1 || n < 2) ... in some code.

The question is what good is the test n % 1? I presume it is (false)0 for all non-zero integers, in which case it would be pointless to disjoin it with anything as it would be equivalent to its disjunct ((false || p) == p, right?). Is it checking if the number is an int? Is it a shortcut for !isNaN(n)?


原文:https://stackoverflow.com/questions/39972110
2021-09-23 15:09

满意答案

在javascript中,所有数字都是float因此n%1返回n/1余数,因此它返回n的小数部分,如n-floor(n)为正n 。 所以:

if (n % 1 || n < 2)

应选择所有小数和小于2的所有整数(对于整数IsPrime方法,这些无效输入)。


in javascript all numbers are floats so n%1 returns remainder of n/1 so it returns the fractional part of n something like n-floor(n) for positive n. So:

if (n % 1 || n < 2)

should select all fractional numbers and all integers less then 2 (which are not valid inputs for integer IsPrime method).

相关问答

更多

Modulo处理不正确(Modulo is not processing correctly)

除了一些问题,您的代码大多是正确的: 1)如果是ISBN,你正试图计算校验和(最后一位数)。 这意味着您应该只考虑9位数: ISBNNo = raw_input("please enter a ten digit number of choice") assert len(ISBNNo) == 10, "ten digit ISBN number is expected" # ... for i in ISBNNo[0:9]: # iterate only over positions 0..9...

检查一个值是否等于Django模板中另一个数字的模数(Check if a value is equal to the modulo of another number in a Django template)

DivisibleBy只是做一个模数来检查最终值是否等于0,没有任何东西阻止你使用完全相同的代码制作自己的模板标签而没有最终检查 @register.filter(is_safe=False) def modulo(value, arg): return int(value) % int(arg) {% ifequal idx|modulo:3 2 %} DivisibleBy just does a modulo to check whether or not the final ...

模数为双打(Modulo for doubles)

这是不可能的,双倍只有15位有效数字。 寻找BigInt类的实现。 这里讨论C的具体情况。 That's not possible, a double only has 15 significant digits. Look for an implementation of a BigInt class. C specific is discussed here.

模数在使用身份相减(Modulo in Subtracting using identities)

是。 我想它应该如下 ((a%c - b%c) % c + c) % c 如果a = 12 , b = 7和c = 10那么(a%c - b%c)%c将给出-5然后再加c和mod再次得到5这就是正确答案 Yes. I guess it should be as follows ((a%c - b%c) % c + c) % c If a = 12, b = 7 and c = 10 then (a%c - b%c)%c will give -5 Then adding c and mod it a...

检查模数1(checking number modulo 1)

在javascript中,所有数字都是float因此n%1返回n/1余数,因此它返回n的小数部分,如n-floor(n)为正n 。 所以: if (n % 1 || n < 2) 应选择所有小数和小于2的所有整数(对于整数IsPrime方法,这些无效输入)。 in javascript all numbers are floats so n%1 returns remainder of n/1 so it returns the fractional part of n something li...

模数为负数(Modulo of a negative number)

我不想用一些复杂的数学概念来打扰你,所以我会尽量保持简单。 当我们说a = b(mod c)时,我们只是说ab是c的倍数。 这意味着当我们想要知道mod c的值是什么时,说它是a或ac或+ c或a + 1000 * c是真的。 因此,您的2个公式是有效的。 但你想要的是知道计算机给你的答案,对吧? 嗯,这取决于您使用的语言。 例如,对于Java,mod b具有a的符号,并且具有严格低于b的绝对值。 这意味着a = 7,b = 3且N = 5,(ab)%N = 4,但是你的两个表达式将返回-1。 如...

Python的模数误解(Python's modulo misunderstanding)

将整数除以另一个整数时,它并不总是均匀分布。 例如, 23 / 7将给出2的余数,因为23 = 7 * 3 + 2 。 Modulo为您提供除法运算的剩余部分...... 23 % 7 = 2 。 如果您的天数超过一周的时间,则此功能非常有用。 您可以使用整数除法(意味着商将是一个整数)来计算周数23/7 23 / 7 = 3然后以模数计算剩余天数超过23 % 7 = 2 ,告诉您23天是相等的到3周和2天。 When you divide an integer by another intege...

在Python中获取bytes-number的模数(Getting modulo of bytes-number in Python)

>>> int.from_bytes(b'hi', 'big', signed=False) % 3 2 >>> int.from_bytes(b'hi', 'big', signed=False) % 3 2

模数ARM的随机数(Random number with modulo ARM)

AND只有在你感兴趣的剩余部分来自于2的权力时才有效。你可以做的一件事就是使用一个这样的值而不是100。 另一种方法就是使用余数定理: a % 100 = a - (100 * int(a/100)) 这也是gcc所做的事情(虽然它避免实际上被称为倒数乘法的东西除以 100;如果你的ARM支持整数除法指令,那么,你很幸运 )。 ANDs only work if the remainder you are interested in comes from the division with a p...

'for'循环和模数('for' loop and modulo)

你已经改变了这个条件。 for循环的中间部分告诉你循环必须是什么才能继续。 您的第二个版本使用相同的条件来决定何时停止。 for (A; B; C) { ... } 可以(大部分)重写为 A; while (B) { ... C; } (不同之处在于for循环中的continue仍然会执行C部分。) 最初你的number是3.然后我们做相当于while (number % 7 == 0) { ... } ,但是那个条件失败( 3 % 7是3,而不是0),所以循环永远不会运行。 ...

相关文章

更多

Java Number类

Java Number类 一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte、 ...

使用mybatis执行sql的时候为什么会出现Parameter index out of range (1 > number of parameters, which is 0)?

写like语句的时候 一般都会写成 like '% %' 在mybatis里面写就是应该是 ...

solr4.3之拼写检查SpellChecker功能

拼写检查功能,能在搜索时,提供一个较好用户体验,所以,主流的搜索引擎都有这个功能。在这之前,笔者先简单 ...

使用Hadoop进行大规模数据的全局排序

1.Hellow Hadoop~~! Hadoop(某人儿子的一只虚拟大象的名字)是一个复杂到极 ...

Solr拼写检查(spellCheck)配置和使用

Solr具有拼写检查的功能,您只需修改solr的配置文件(solrconfig.xml)中spellc ...

Guava Preconditions类-检查参数

static int checkPositionIndex(int index

数据分析与处理之一(大规模数据分析架构)

随着互联网、移动互联网和物联网的发展,谁也无法否认,我们已经切实地迎来了一个海量数据的时代,数据调查公 ...

Apache Solr3.4应用实践(高亮 拼写检查 匹配相似)

Solr 是基于lucene的检索服务器。能够很快的搭建检索服务,并且提供的很多实用的组件。例如高亮( ...

Windows Phone 获取app在商店中的版本(检查app的版本号)

public classAppVersionHelper { /// &lt;summary ...

Python 写的Hadoop小程序

该程序是在python2.3上完成的,python版本间有差异。 Mapper: import sys ...

最新问答

更多

使用R中的傻瓜进行一次热编码(One Hot Encoding using Dummies in R)

这是一个tidyverse方式: library(tidyverse) alldata %>% separate_rows(columnc) %>% mutate(count = 1) %>% spread(columnc, count, fill = 0, sep = "_") # columna columnb columnc_word1 columnc_word2 columnc_word3 #1 1 AR

“yield”关键字在Ruby中做什么?(What does the “yield” keyword do in Ruby?)

这是一个充实你的示例代码的例子: class MyClass attr_accessor :items def initialize(ary=[]) @items = ary end def each @items.each do |item| yield item end end end my_class = MyClass.new(%w[a b c d]) my_class.each do |y| puts y end #

将unicode字符串转换为wchar_t(Convert unicode string into wchar_t)

你需要做的比这更困难。 System::String是System::UnicodeString的别名,它在Windows上保存wchar_t数据。 您不需要将UnicodeString数据复制到wchar_t[]缓冲区中。 当需要将String传递给期望wchar_t*参数的函数时,可以使用UnicodeString::c_str()方法,例如: void abrirporta() { String pcCommPort = L"COM" + Label1->Text; por

如何在Sencha Touch 2上的分组列表中对项目进行分组?(How to group items within a groupedList on Sencha Touch 2?)

看看Ext.data.Store上的grouper配置。 您可能必须对逻辑有点创造性,但您应该能够完成它。 In the end I didn't need a list within a list. I ended up resolving this by changing the JSON format it was receiving and then using Ext.XTemplate(); looping through using . Thank

lxml - 如何将img src更改为绝对链接(lxml — how to change img src to absolute link)

在测试Mikko Ohtamaa的回答后,这里有一些笔记。 它适用于很多标签并使用lxm,但有不同的情况,例如background-image:url(xxx)。 所以我只是使用正则表达式来替代。 这是解决方案, content = re.sub('(?P("|\'))\s*(?P(\w|\.)+(/.+?)+)\s*(?P("|\'))', '\g' + url[:url.rfind('/')] + '/

github.com 中,为什么是README.md,而不是README 或README.txt?

是markdown格式,现在很多博客都是用markdown语法书写了。markdown语法简单,写出来的东西排版也比较好。

HHVM无法识别hh(hack)代码(HHVM not recognizing hh (hack) code)

我发现了这个问题 - 这很简单,但是我发布了答案,以防它可能帮助其他人解决同样的问题。 在php中,你通常用<?打开每个文件。 php并用?>关闭它 在黑客中,文件以<?打开 嗯,但你最后不能使用贴身标签。 I discovered the problem --it's very simple, but I'm posting the answer in case it might help others with the same problem. In php, you typically

如何在添加到Android AOSP的自定义外部项目中保留文件权限?(How do I preserve file permissions in a custom external project added to Android AOSP?)

系统映像filesytem修改您可以在此文件中更改: system/core/include/private/android_filesystem_config.h 尝试在那里更改权限。 如果你有问题,请在这里发帖。 System image filesytem modifications you can change in this file: system/core/include/private/android_filesystem_config.h Try to change per

Python怎么打开代码编辑器

你的代码编辑器应该是指Python IDE, 简单的画你下载一个notepad++,语言设置Python就可以使用了. 辅助功能好一点的IDE,有很多如,pycharm,Vim,Sublime Text....都不错,都能够进行调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制等帮助

getx和getminx之间的区别(difference between getx and getminx)

矩形由(x 1 ,y 1 ),(x 2 ,y 2 )定义。 出于我们的目的,让我们表示(x 1 ,y 1 )和矩形的左上角以及(x 2 ,y 2 )作为右下角 。 rectangle.getX()返回x 1 ,而rectangle.getMinX()返回x k ,使得:对于X中的所有x i (x坐标的集合),x k <= x i 。 通过构造,矩形类将x 1定义为使得x 1 = x k ,如可以在源代码中看到的那样: public double getMinX() { return g