**What is an evil number: **In the previous article, we have discussed Python Program to Determine Whether one String is a Rotation of Another

**Evil Number :**

The Evil number is another unique positive whole number with an even number of 1s in its binary representation.

example:

1) let n= 12

binary representation = 1100

# It has an even number of 1’s. Therefore 12 is an evil number.

2) n= 4

binary representation = 100

It has an odd number of 1’s. Therefore 4 is not an evil number.

- Python Program to Check a Binary Number is Divisible by a Number N
- Python Program to Toggle the Last m Bits
- Python Program to Find the Total Number of Bits Needed to be Flipped

**Examples:**

**Example1:**

**Input:**

Given Number = 6

**Output:**

The given number 6 is an Evil Number

**Example2:**

**Input:**

Given Number = 22

**Output:**

The given number 22 is Not an Evil Number

## Program to Check Evil Number or Not

Below are the ways to check whether the given number is an evil number or not

### Method #1:Using Built-in Functions (Static input)

**Approach:**

- Give the number as static input and store it in a variable.
- Convert the given number into a binary number using the bin() function and store it in another variable.
- Take a variable say ‘c’ and initialize its value with zero.
- Loop in the above obtained binary number using the for loop.
- Check if the iterator value is equal to ‘1’ using the if conditional statement.
- If the statement is true, increase the count value of the variable ‘c’ by 1 and store it in the same variable.
- Check for the even number of 1’s by c %2 is equal to zero or not using the if conditional statement.
- If the statement is true, print “The given number is an Evil Number”.
- Else print “The given number is not an Evil Number”.
- The Exit of the program.

**Below is the implementation:**

# Give the number as static input and store it in a variable. gvn_num = 9 # Convert the given number into a binary number using the bin() function and # store it in another variable. k = bin(gvn_num)[2:] # Take a variable say 'c' and initialize its value with zero. c = 0 # Loop in the above obtained binary number using the for loop. for i in k: # Check if the iterator value is equal to '1' using the if conditional statement. if(i == '1'): # If the statement is true, increase the count value of the variable 'c' by 1 and # store it in the same variable. c += 1 # Check for the even number of 1's by c %2 is equal to zero or not using the # if conditional statement. if(c % 2 == 0): # If the statement is true, print "The given number is an Evil Number". print("The given number", gvn_num, "is an Evil Number") else: # Else print "The given number is not an Evil Number". print("The given number", gvn_num, "is Not an Evil Number")

**Output:**

The given number 9 is an Evil Number

### Method #2: Using Built-in Functions (User Input)

**Approach:**

- Give the number as user input using the int(input()) function and store it in a variable.
- Convert the given number into a binary number using the bin() function and store it in another variable.
- Take a variable say ‘c’ and initialize its value with zero.
- Loop in the above obtained binary number using the for loop.
- Check if the iterator value is equal to ‘1’ using the if conditional statement.
- If the statement is true, increase the count value of the variable ‘c’ by 1 and store it in the same variable.
- Check for the even number of 1’s by c %2 is equal to zero or not using the if conditional statement.
- If the statement is true, print “The given number is an Evil Number”.
- Else print “The given number is not an Evil Number”.
- The Exit of the program.

**Below is the implementation:**

# Give the number as user input using the int(input()) function and store it in a variable. gvn_num = int(input("Enter some random number = ")) # Convert the given number into a binary number using the bin() function and # store it in another variable. k = bin(gvn_num)[2:] # Take a variable say 'c' and initialize its value with zero. c = 0 # Loop in the above obtained binary number using the for loop. for i in k: # Check if the iterator value is equal to '1' using the if conditional statement. if(i == '1'): # If the statement is true, increase the count value of the variable 'c' by 1 and # store it in the same variable. c += 1 # Check for the even number of 1's by c %2 is equal to zero or not using the # if conditional statement. if(c % 2 == 0): # If the statement is true, print "The given number is an Evil Number". print("The given number", gvn_num, "is an Evil Number") else: # Else print "The given number is not an Evil Number". print("The given number", gvn_num, "is Not an Evil Number")

**Output:**

Enter some random number = 3 The given number 3 is an Evil Number

Explore more instances related to python concepts from Python Programming Examples Guide and get promoted from beginner to professional programmer level in Python Programming Language.