﻿ Python: Find the largest integer divisor of a number n that is less than n - w3resource

# Python: Find the largest integer divisor of a number n that is less than n

## Python Programming Puzzles: Exercise-37 with Solution

A divisor is a number that divides another number either completely or with a remainder.

Write a Python program to find the largest integer divisor of a number n that is less than n.

```Input:
18
Output:
9
Input:
100
Output:
50
Input:
102
Output:
51
Input:
500
Output:
250
Input:
1000
Output:
500
Input:
6500
Output:
3250
```

Visual Presentation:

Sample Solution:

Python Code:

``````# License: https://bit.ly/3oLErEI

# Define a function named 'test' that takes an integer 'n' as input
def test(n):
# Return the largest integer divisor of 'n' that is less than 'n'
return next(d for d in range(n - 1, 0, -1) if n % d == 0)

# Assign a specific value 'n' to the variable
n = 18

# Print a message indicating the original number
print("Original number:", n)

# Print a message indicating the operation to be performed
print("Largest integer divisor of a number n that is less than n:")
# Print the result of the test function applied to 'n'
print(test(n))

# Assign another specific value 'n' to the variable
n = 100

# Print a message indicating the original number
print("\nOriginal number:", n)

# Print a message indicating the operation to be performed
print("Largest integer divisor of a number n that is less than n:")
# Print the result of the test function applied to 'n'
print(test(n))

# Assign another specific value 'n' to the variable
n = 102

# Print a message indicating the original number
print("\nOriginal number:", n)

# Print a message indicating the operation to be performed
print("Largest integer divisor of a number n that is less than n:")
# Print the result of the test function applied to 'n'
print(test(n))

# Assign another specific value 'n' to the variable
n = 500

# Print a message indicating the original number
print("\nOriginal number:", n)

# Print a message indicating the operation to be performed
print("Largest integer divisor of a number n that is less than n:")
# Print the result of the test function applied to 'n'
print(test(n))

# Assign another specific value 'n' to the variable
n = 1000

# Print a message indicating the original number
print("\nOriginal number:", n)

# Print a message indicating the operation to be performed
print("Largest integer divisor of a number n that is less than n:")
# Print the result of the test function applied to 'n'
print(test(n))

# Assign another specific value 'n' to the variable
n = 6500

# Print a message indicating the original number
print("\nOriginal number:", n)

# Print a message indicating the operation to be performed
print("Largest integer divisor of a number n that is less than n:")
# Print the result of the test function applied to 'n'
print(test(n))
``````

Sample Output:

```Original number: 18
Largest integer divisor of a number n that is less than n:
9
Original number: 100
Largest integer divisor of a number n that is less than n:
50
Original number: 102
Largest integer divisor of a number n that is less than n:
51
Original number: 500
Largest integer divisor of a number n that is less than n:
250
Original number: 1000
Largest integer divisor of a number n that is less than n:
500
Original number: 6500
Largest integer divisor of a number n that is less than n:
3250
```

Flowchart:

Python Code Editor :

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.

﻿