# Python Program Print Bitwise AND set of a Number N

In the previous article, we have discussed Python Program to Toggle Bits of a Number Except First and Last bits

Given a number and the task is to print all the bitwise AND set of a given number.

For some number I the bitwise AND set of a number N is all feasible numbers x smaller than or equal to N such that N & I equals x.

Examples:

Example1:

Input:

Given Number = 6

Output:

The all bitwise AND set of a given number{ 6 } :
0  2  4  6

Explanation:

Iterating from 0 to 6 so
0 & 6 = 0
1 & 6 = 0
2 & 6 = 2
3 & 6 = 2
4 & 6 = 4
5 & 6 = 4
6 & 6 = 6
Hence the all bitwise AND set of a given number = 0 2 4 6 (removing duplicates)

Example2:

Input:

Given Number = 3

Output:

The all bitwise AND set of a given number{ 3 } :
0  1  2  3

## Program Print Bitwise AND set of a Number N in Python

Below are the ways to print all the bitwise AND set of a given number in Python:

### Method #1: Using For Loop (Static Input)

Approach:

• Give the number as static input and store it in a variable.
• Loop till the given number using the for loop.
• Inside the Loop, apply AND operation for the given number and the iterator value and store it in another variable.
• Check if the above result is equal to the iterator value using the if conditional statement.
• If the statement is true, then print the iterator value separated by spaces.
• The Exit of the Program.

Below is the implementation:

# Give the number as static input and store it in a variable.
gvn_numb = 6
# Loop till the given number using the for loop.
print("The all bitwise AND set of a given number{", gvn_numb, "} : ")
for itr in range(gvn_numb + 1):
# Apply AND operation for the given number and the iterator value and store it in
# another variable.
p = gvn_numb & itr
# Check if the above result is equal to the iterator value using the if conditional
# statement.
if (p == itr):
# If the statement is true, then print the iterator value separated by spaces.
print(itr, " ", end="")


Output:

The all bitwise AND set of a given number{ 6 } :
0  2  4  6

### Method #2: Using For loop (User Input)

Approach:

• Give the number as user input using the int(input()) function and store it in a variable.
• Loop till the given number using the for loop.
• Inside the Loop, apply AND operation for the given number and the iterator value and store it in another variable.
• Check if the above result is equal to the iterator value using the if conditional statement.
• If the statement is true, then print the iterator value separated by spaces.
• 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_numb = int(input("Enter some random number = "))
# Loop till the given number using the for loop.
print("The all bitwise AND set of a given number{", gvn_numb, "} : ")
for itr in range(gvn_numb + 1):
# Apply AND operation for the given number and the iterator value and store it in
# another variable.
p = gvn_numb & itr
# Check if the above result is equal to the iterator value using the if conditional
# statement.
if (p == itr):
# If the statement is true, then print the iterator value separated by spaces.
print(itr, " ", end="")


Output:

Enter some random number = 3
The all bitwise AND set of a given number{ 3 } :
0 1 2 3

### Method #3: Using While Loop (Static Input)

Approach:

• Give the number as static input and store it in a variable.
• Assign the given number to the variable say tempry.
• Loop till the above variable tempry is not equal to 0 using the while loop.
• Inside the Loop, Print the value of tempry separated by spaces.
• Apply AND operation for the tempry -1 and given number and store it in the same variable tempry.
• Exit the loop.
• Print 0.
• The Exit of the Program.

Below is the implementation:

# Give the number as static input and store it in a variable.
gvn_numb = 10
# Assign the given number to the variable say tempry.
tempry = gvn_numb
print("The all bitwise AND set of a given number{", gvn_numb, "} : ")
# Loop till the above variable tempry is not equal to 0 using the while loop.
while(tempry != 0):
# Inside the Loop, Print the value of tempry separated by spaces.
print(tempry, end=" ")
# Apply AND operation for the tempry -1 and given number and store it in the same variable
# tempry.
tempry = (tempry - 1) & gvn_numb
# Exit the loop.
# Print 0.
print("0")


Output:

The all bitwise AND set of a given number{ 10 } :
10 8 2 0

### Method #4: Using While loop (User Input)

Approach:

• Give the number as user input using the int(input()) function and store it in a variable.
• Assign the given number to the variable say tempry.
• Loop till the above variable tempry is not equal to 0 using the while loop.
• Inside the Loop, Print the value of tempry separated by spaces.
• Apply AND operation for the tempry -1 and given number and store it in the same variable tempry.
• Exit the loop.
• Print 0.
• 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_numb = int(input("Enter some random number = "))
# Assign the given number to the variable say tempry.
tempry = gvn_numb
print("The all bitwise AND set of a given number{", gvn_numb, "} : ")
# Loop till the above variable tempry is not equal to 0 using the while loop.
while(tempry != 0):
# Inside the Loop, Print the value of tempry separated by spaces.
print(tempry, end=" ")
# Apply AND operation for the tempry -1 and given number and store it in the same variable
# tempry.
tempry = (tempry - 1) & gvn_numb
# Exit the loop.
# Print 0.
print("0")


Output:

Enter some random number = 7
The all bitwise AND set of a given number{ 7 } :
7 6 5 4 3 2 1 0

If you wanna write simple python programs as a part of your coding practice refer to numerous Simple Python Program Examples existing and learn the approach used.