再问一次C++编程问题

来源:百度知道 编辑:UC知道 时间:2024/05/29 08:59:11
编写一个程序,输入一系列整数,并将每个整数分别传递给函数even,该函数利用取模运算符来确定一个整数是否为偶数。函数应该有一个整数参数,并且如果整数位偶数,则返回true,否则返回false.
谢谢~~

#include "iostream"
using namespace std;

bool even(int num)
{
if(num%2==0)
return true;
return false;
}
int main()
{
int num;
while(cin >> num)
{
if(even(num))
cout << "True" << endl;
else
cout << "False" << endl;
}
return 0;
}

小case
bool even(int n)
{
if(n&1) return false;
return true;
}
给你解释一下吧
整数的2进制形式如果末尾是1,呢么1*2^0 = 1,其它位无论是什么,都是2的倍数,也就是只要看最后一位是不是1就可以了。是1就是奇数,否则为偶数