JavaScript:如何不使用模运算符检查数字是否为偶数?
对于给定的整数,编写一个 JavaScript 程序来检查数字是奇数还是偶数,并将结果返回给用户。使用模运算符检查数字是否为偶数非常容易。但是,在本文中,我们将不使用模运算符来检查数字是否为偶数。
使用 for 循环
在这种方法中,我们将使用 for 循环 来检查数字是否为偶数。其思想是将布尔标志变量设置为 true,并检查最多 n 次。如果标志的值恢复为true,则表示该值为偶数,否则为奇数。
示例
在下面的示例中,我们将使用 for 循环方法来检查数字是否为偶数。
// Returns true if n is even, function isEven(n) { let isEven = true; for (let i = 1; i <= n; i++) isEven = !isEven; if (isEven) console.log(n + " is an Even number"); else console.log(n + " is Odd"); } // function call isEven(101); isEven(158);
以上代码的输出如下:
101 is Odd 158 is an Even number
使用乘法和除法
在这里,我们将数字除以 2,然后将结果乘以 2。如果结果与原始数字相同,则它是一个偶数。
示例
在这个 JavaScript 程序中,我们将使用乘法和除法来检查数字是否为偶数。
// Returns true if n is even, function isEven(n) { // Return true if n/2 does not result // in a float value. if (parseInt(n / 2, 10) * 2 == n) { console.log(n + " is an Even number"); } else { console.log(n + " is Odd"); } } // function call isEven(101); isEven(158);
上述程序将产生以下结果:
101 is Odd 158 is an Even number
使用位运算符
在这种方法中,我们将使用按位与运算符来检查指定的数字是否为偶数。如果给定数字与 1 进行与运算的结果为 0,则该数字为偶数,否则为奇数。
示例
以下 JavaScript 程序演示了如何在不使用模运算符的情况下检查数字是否为偶数。
// Returns true if n is even, function isEven(n) { // n&1 is 1, then odd, else even if (!(n & 1)) { console.log(n + " is an Even number"); } else { console.log(n + " is Odd"); } } // function call isEven(101); isEven(158);
运行此代码后,您将得到以下结果:
101 is Odd 158 is an Even number
广告