Our website provided core java programs examples with output aid beginners and expert coders to test their knowledge gap and learn accordingly.

Given a number, the task is to find the smallest number which divides the given number in Python.

**Examples:**

**Example1:**

**Input:**

given number = 91

**Output:**

The smallest which divides the given number [ 91 ] = 7

**Example2:**

**Input:**

given number = 169

**Output:**

Enter some random number = 169 The smallest which divides the given number [ 169 ] = 13

## Program to Find the Smallest Divisor of an Integer in Python

There are several ways to find the smallest divisor of the given number in Python some of them are:

- Using for loop(Static Input)
- Using for loop(User Input )
- Using While Loop(Static Input)
- Using While Loop(User Input)
- Using List Comprehension

### Method #1:Using for loop(Static Input)

**Approach:**

- Give the number as static input and store it in a variable.
- Loop from 2 to given number using For loop.
- Check if the iterator value divides the given number perfectly using the if statement and modulus operator.
- Print the iterator value.
- Break the loop using the break statement.
- The Exit of the Program.

**Below is the implementation:**

# Give the number as static input and store it in a variable. gvnNumb = 91 # Loop from 2 to given number using For loop. for itervalue in range(2, gvnNumb+1): # Check if the iterator value divides the given number # perfectly using the if statement and modulus operator. if(gvnNumb % itervalue == 0): # Print the iterator value. print( 'The smallest which divides the given number [', gvnNumb, '] =', itervalue) # Break the loop using the break statement. break

**Output:**

The smallest which divides the given number [ 91 ] = 7

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

**Approach:**

- Give the number as user input using the
**int(input())**function that converts the string to an integer. - Store it in a variable.
- Loop from 2 to given number using For loop.
- Check if the iterator value divides the given number perfectly using the if statement and modulus operator.
- Print the iterator value.
- Break the loop using the break statement.
- The Exit of the Program.

**Below is the implementation:**

# Give the number as user input using the int(input()) function that converts # the string to an integer. # Store it in a variable. gvnNumb = int(input('Enter some random number = ')) # Loop from 2 to given number using For loop. for itervalue in range(2, gvnNumb+1): # Check if the iterator value divides the given number # perfectly using the if statement and modulus operator. if(gvnNumb % itervalue == 0): # Print the iterator value. print( 'The smallest which divides the given number [', gvnNumb, '] =', itervalue) # Break the loop using the break statement. break

**Output:**

Enter some random number = 369 The smallest which divides the given number [ 369 ] = 3

**Explanation:**

- The user must enter a number.
- The for loop has a range of 2 to the number
- If the remainder of the number is zero when divided by the value of i the element is a divisor of the number.
- Print the number and break the loop.

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

**Approach:**

- Give the number as static input and store it in a variable.
- Take a temporary variable and initialize it with 2.
- Loop till the temporary variable is less than or equal to the given number using the while loop.
- Check if the temporary variable divides the given number perfectly using the if statement and modulus operator.
- Print the temporary variable.
- Break the loop using the break statement.
- Increase the value of the temporary variable by 1.
- The Exit of the Program.

**Below is the implementation:**

# Give the number as static input and store it in a variable. gvnNumb = 125 # Take a temporary variable and initialize it with 2. tempnumber = 2 # Loop till the temporary variable is less than # or equal to the given number using the while loop. while(tempnumber <= gvnNumb): # Check if the temporary variable divides the given number perfectly # using the if statement and modulus operator. if(gvnNumb % tempnumber == 0): # Print the iterator value. print( 'The smallest which divides the given number [', gvnNumb, '] =', tempnumber) # Break the loop using the break statement. break # Increase the value of the temporary variable by 1. tempnumber = tempnumber+1

**Output:**

The smallest which divides the given number [ 125 ] = 5

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

**Approach:**

- Give the number as user input using the int(input()) function that converts the string to an integer.
- Store it in a variable.
- Take a temporary variable and initialize it with 2.
- Loop till the temporary variable is less than or equal to the given number using the while loop.
- Check if the temporary variable divides the given number perfectly using the if statement and modulus operator.
- Print the temporary variable.
- Break the loop using the break statement.
- Increase the value of the temporary variable by 1.
- The Exit of the Program.

**Below is the implementation:**

# Give the number as user input using the int(input()) function that converts # the string to an integer. # Store it in a variable. gvnNumb = int(input('Enter some random number = ')) # Take a temporary variable and initialize it with 2. tempnumber = 2 # Loop till the temporary variable is less than # or equal to the given number using the while loop. while(tempnumber <= gvnNumb): # Check if the temporary variable divides the given number perfectly # using the if statement and modulus operator. if(gvnNumb % tempnumber == 0): # Print the iterator value. print( 'The smallest which divides the given number [', gvnNumb, '] =', tempnumber) # Break the loop using the break statement. break # Increase the value of the temporary variable by 1. tempnumber = tempnumber+1

**Output:**

Enter some random number = 578 The smallest which divides the given number [ 578 ] = 2

### Method #5:Using List Comprehension

**Approach:**

- Give the number as user input using the int(input()) function that converts the string to an integer.
- Store it in a variable.
- Using List Comprehension, for loop and if statements add all the divisors of the given number from 2 to given number into the list.
- Print the first element in the given list.
- The Exit of the Program.

**Below is the implementation:**

# Give the number as user input using the int(input()) function that converts # the string to an integer. # Store it in a variable. gvnNumb = int(input('Enter some random number = ')) # Using List Comprehension, for loop and if statements add # all the divisors of the given number # from 2 to given number into the list. divList = [numbe for numbe in range(2, gvnNumb+1) if(gvnNumb % numbe == 0)] smalldivi = divList[0] # Print the first element in the given list. print('The smallest which divides the given number [', gvnNumb, '] =', smalldivi)

**Output:**

Enter some random number = 169 The smallest which divides the given number [ 169 ] = 13

**Related Programs**:

- Python Program to Form an Integer that has the Number of Digits at Ten’s Place and the Least Significant Digit of the Entered Integer at One’s Place
- Python Program to Find the Factorial of a Number
- Python Program to Find the Sum of Natural Numbers
- Python Program to Find the Factors of a Number
- Python Program to Find the LCM of two Numbers
- Python Program to Find the Missing Number in an array/list
- Python Program to Find the Odd Occurring Element in an Array/list