Hello Folks,
As part of Frequently Asked Java Programs In Interviews For Freshers And Experienced, in this post we will see a Java program to Find Divisors Of Given Number.
Problem:
Write a JAVA program to find the divisors of a given number.
Solution:
- Divisor is a number that divides another number without a reminder or a number that divides an integer evenly.
 
Ex: 10/2= 5 (Here 2 is divisor.)
Logic 1:
- Positive Divisor of a number N will be greater than or equal to 1 and less than or equal to number N.
 - For Ex: Say Number is 4. Divisor of 4 will be 1,2 and 4.
 - To get the divisor of a number N, we should divide N by all numbers in between 1 and N including 1 and N.
 - We will use modulus operator which gives reminder. If reminder is zero, we can say given number is divisible by another number.
 - For ex: 10%2= 0 (10 is divisible by 2 without a reminder)
 - 11%2=1 (11 is divisible by 2 with a reminder as 1)
 
Java Code:
Output:
              
              
Logic 2:
- A given number N can be divisible by another number Y without any reminder if Y is greater than or equal to 1 and less than or equal to N/2.
 - In first logic, our loop will continue till counter equals to number which will make logic time consuming.
 - We can reduce the loop iteration by half just by putting logic 2.
 
Java Code:
Output:
              
              
Logic 3:
-  For every divisor Y of 
N, there is also a corresponding divisorN/Y. Thus to find all pairs of divisors, you need only to loop from 1 to the square root N. - This will be more optimal solution and interviewer will expect to write this logic.
 
Java code:
Output:
              
              
If you have any other logic of solving above problem, please comment. It is always better to know more logic.
If you like my posts, please like, comment, share and subscribe.
#HappyCoding