// Evil number = positive whole number whose binary representation contains an even number of 1's
using System;
public class Program
{
public static int countNumberOfOne(string binaryNumber) {
int length = binaryNumber.Length;
int count = 0;
char ch;
for (int i = 0; i < length; i++) {
ch = binaryNumber[i];
if (ch == '1') {
count++;
}
}
return count;
}
public static bool checkEvilNumber(int number) {
string binaryNumber = Convert.ToString(number, 2);
Console.Write(number + " = " + binaryNumber + " = ");
return (countNumberOfOne(binaryNumber) % 2 == 0) ? true : false;
}
public static void Main(string[] args)
{
int number = 23;
Console.WriteLine(checkEvilNumber(number));
number = 9863;
Console.WriteLine(checkEvilNumber(number));
}
}
/*
run:
23 = 10111 = True
9863 = 10011010000111 = False
*/