检查一个数字是偶数还是奇数
一个数字即使能被2整除也会被调用,如果不能被2整除就会被称为奇数。给定一个数字,我们需要检查它在PHP中是奇数还是偶数。
例子
1 2 3 4 5 6 7 | Input : 42 Output : Even Explanation: The number 42 is divisible by 2 Input : 39 Output : Odd Explanation: The number 39 is not divisible by 2 |
我们可以通过以下两种不同的方式来解决这个问题:
- 使用取模(%)运算符:这是检查偶数和奇数的最简单方法,在此方法中,我们使用取模 ‘ %运算符检查数字是否能被2整除。
下面的程序解释了上述方法:
12345678910111213141516<?php// PHP code to check whether the number// is Even or Odd in Normal wayfunction check($number){if($number % 2 == 0){echo "Even";}else{echo "Odd";}}// Driver Code$number = 39;check($number)?>
输出
1Odd - 递归方法:在递归方法中,我们在每个递归调用中减少2个数字。如果最后的数字是0,那么它就是偶数,否则就是1,结果就是奇数。
以下是上述方法的实施情况:
123456789101112131415161718192021<?php// Recursive function to check whether// the number is Even or Oddfunction check($number){if($number == 0)return 1;else if($number == 1)return 0;else if($number<0)return check(-$number);elsereturn check($number-2);}// Driver Code$number = 39;if(check($number))echo "Even";elseecho "Odd";?>
输出
1Odd - 使用位操作:在这种方法中,我们将找到位和数字1。如果位为1,则为奇数,否则为偶数。
12345678910111213141516171819202122232425<?php// PHP code to check whether the number// is Even or Odd using Bitwise Operatorfunction check($number){// One$one = 1;// Bitwise AND$bitwiseAnd = $number & $one;if($bitwiseAnd == 1){echo "Odd";}else{echo "Even";}}// Driver Code$number = 39;check($number)?>
输出
1Odd