在我们日常的编程当中,常常会遇到判断某个整数属于奇数还是偶数的情况。
大家一般的处理做法是用这个整数和2取模。然后判断是等于1还是等于0。
这里,我要为大家介绍一种快速有效的判断做法,利用2进制进行判断。
大家都知道,奇数的最低位一定是1,而偶数的最低位一定是0.所以我们可以根据这个特性,让需要判定的整数和1进行“与”运算,这样就只留下了原数的最低位,然后直接判断这个数等于1还是等于0即可。
实现代码如下:
class
Program
2
...
{
3staticvoidMain(string[]args)
4...{
5
6bools=OddEven.IsEven(4);
7
8Console.WriteLine(s);
9
10s=OddEven.IsOdd(55877554);
11
12Console.WriteLine(s);
13}
14}
15

16
/**/
/**/
/**/
///<summary>
17
/**/
///判断一个整数是奇数还是偶数。
18
/**/
///</summary>
19
class
OddEven
20
...
{
21staticprivateints=1;
22
23staticpublicboolIsEven(inta)
24...{
25if((a&s)==0)
26...{
27returntrue;
28}
29else
30...{
31returnfalse;
32}
33
34}
35
36staticpublicboolIsOdd(inta)
37...{
38return!IsEven(a);
39}
40}
转自http://www.cnblogs.com/gpcuster/archive/2007/11/21/967155.html
5632

被折叠的 条评论
为什么被折叠?



