ตัวเลขจะเป็นคู่แม้ว่าหารด้วยสองลงตัวและเป็นเลขคี่หากหารด้วยสองไม่ลงตัว
เลขคู่บางตัวคือ −
2, 4, 6, 8, 10, 12, 14, 16
เลขคี่บางตัวคือ −
1, 3, 5, 7, 9, 11, 13, 15, 17
ตรวจสอบว่าจำนวนเป็นเลขคู่หรือคี่โดยใช้โมดูลัส
โปรแกรมตรวจสอบเลขคู่หรือคี่โดยใช้โมดูลัสมีดังนี้
ตัวอย่าง
#include <iostream> using namespace std; int main() { int num = 25; if(num % 2 == 0) cout<<num<<" is even"; else cout<<num<<" is odd"; return 0; }
ผลลัพธ์
25 is odd
ในโปรแกรมข้างต้น ตัวเลข num หารด้วย 2 และสังเกตส่วนที่เหลือ หากเศษเหลือเป็น 0 จะเป็นเลขคู่ หากเศษเหลือเป็น 1 แสดงว่าเป็นเลขคี่
if(num % 2 == 0) cout<<num<<" is even"; else cout<<num<<" is odd";
ตรวจสอบว่าตัวเลขเป็นจำนวนคู่หรือคี่โดยใช้ Bitwise AND
ตัวเลขเป็นเลขคี่ถ้ามี 1 เป็นบิตขวาสุดในการแสดงระดับบิต แม้ว่ามันจะมี 0 เป็นบิตขวาสุดในการแสดงระดับบิต ซึ่งสามารถพบได้โดยใช้ระดับบิต AND กับตัวเลขและ 1 หากผลลัพธ์ที่ได้คือ 0 ตัวเลขจะเป็นคู่ และหากเอาต์พุตที่ได้รับคือ 1 แสดงว่าตัวเลขนั้นเป็นเลขคี่
โปรแกรมตรวจสอบเลขคู่หรือคี่โดยใช้ Bitwise AND มีดังนี้ −
ตัวอย่าง
#include <iostream> using namespace std; int main() { int num = 7; if((num & 1) == 0) cout<<num<<" is even"; else cout<<num<<" is odd"; return 0; }
ผลลัพธ์
7 is odd
ในโปรแกรมข้างต้น ค่าระดับบิต AND จะทำบน num และ 1 หากเอาต์พุตเป็น 0 แสดงว่า num เป็นเลขคู่ ไม่เช่นนั้น num จะเป็นเลขคี่
if((num & 1) == 0) cout<<num<<" is even"; else cout<<num<<" is odd";