很基础的一个问题,如何判断一个整数是奇是偶?
有人会说,用2取余,结果是1,那么就是奇数,结果是0,那么就是偶数
看起来没错,如果用java写一个简单的运算,是这样的:
String str = i+”->”+(i%2==1?”奇数”:”偶数”);
System.out.println(str);
给上面程序中的i分别赋值为1、2、0、-1、-2,看看输出结果是什么样的呢?
1->奇数
2->偶数
0->偶数
-1->偶数
-2->偶数
仔细看一下,发现-1竟然成了偶数,根据小学的数学知识,我们知道这显然是不对的。
问题出在哪里了呢?显然,是i%2==1这个判断式出了问题。
了解java取余运算,会发现java中%运算是这样的,模拟代码如下:
public static int remainder(int dividend,int divisor){
return dividend – dividend/divisor*divisor;
}
通过这样的计算,我们得知,上面的例子中,如果输入-1,取余出来的结果是-1,而不是我们想要的1。所以造成了错误的输出。正确的判断应该是这样的:
i%2==0?”偶数”:”奇数”
结论:奇偶判断时,使用偶判断,而不用奇判断
相关推荐
奇数阶魔方阵 * 1.自然数1出现在第一行的正中间 * 2.若填入的数字在第一行(不在第n列),则下一个数字在第n行且列数加1 ...若应填的地方已经有数字或在方阵之外,则下一个数字就填在前一个数字的下方。
使用matlab实现奇偶校验,使用for循环一步到位,加入了干扰位
C语言程序设计-编写函数求1~100中奇数的平方和结果为166650.000000.c
中奇收银打印机所有版本的驱动,对于想自己通过计算机配钱箱,打印机的人是个很好的办法。
关于奇偶页码不同的设置方法
是用子程序统计数组中奇数个数并存入eax
今天学习jQuery,看到nth-child(even)用法,特意找了下这个选择器的用法,在CSS3标准中,用法很强大。
我们利用在2–15 MeV激发能范围内提取的角动量(J)门控核能级密度(NLD),检查了质量为A〜200的原子核的热力学性质。 有趣的是,实验性NLD与微观方法的结果非常吻合,后者是基于精确配对和有限温度下的独立粒子...
适合初学者,来源于中国MOOC课程作业,用于计算输入数据中奇偶个数统计
c代码-10.键盘输入一个正整数s,从低位开始取出s中奇数位上的数作为高位,依次构成一个新数输出。例如,输入"54321",输出"135"。
摘要假设自旋为0的双夸克与构成夸克具有相似的质量,我们引入了夸克与双夸克之间的对称性。 为构造这种对称的代数,我们将上下旋转的夸克的三元组和自旋为0的夸克视为该代数的基本表示。 我们进一步建立由基本表示的...
IE6真是太疯狂了。今天由于项目需要做了这么一个布局:一个外部的相对定位div,内部一个绝对定位的div(right:0)
用它分析了1980―1986年月平均500hPa高度场中奇、偶对称分量的季节变化和年际异常。结果表明:重大El Nino事件与全球月平均环流奇、偶对称分量的异常存在明显联系,环流偶对称分量的异常与El Nino事件盛期准同时出现...
C语言程序设计-从低位开始取出长整型变量s奇数位上的数,依次构成一个新数放在t中;例如:当s中的数为:7654321时,t中的数为:7531;.c
labview统计数组中奇数偶数个数,利用移位寄存器,用labview编写的奇偶计数程序,把第i次循环执行的结果作为第i+1次循环的输入,LabVIEW循环结构中的移位寄存器可以实现这种功能。
我们发现图 6-2 中的生成矩阵是错误的,Bi,j ... 要检查我们对 CCSDS 131.0-P-1.1 代码的评论,您只需构建图 6-2 中的生成矩阵,然后乘以我们程序提供的 GF(2) 中奇偶校验矩阵的转置。 你会发现GF(2)中的乘积不为零!
中值滤波也是平滑中最重要的地方;邻域平均法和中值滤波法的比较:邻域平均法:属于低通滤波的处理方法;在抑制噪声的同时是图像变得模糊,即图像的细节(例如边缘信息)被削弱;中值滤波法:抑制噪声又能保持细节。将...
对RM中具有奇异性的椭圆问题。讨论了整体轴对称正解的存在性,与以往的文献不同,采用了局部凸空间以及逼近解的方法,得到了正解的存在性。