We are uploading our contents, please refresh app.
Java Premium

Java Program to Find Factorial of a Number Using Recursion

In this program, you'll learn to find and display the factorial of a number using a recursive function in Java.

The factorial of a positive number n is given by: factorial of n (n!) = 1 * 2 * 3 * 4 * ... * n

The factorial of a negative number doesn't exist. And the factorial of 0 is 1.

You will learn to find the factorial of a number using recursion in this example. Visit this page to learn, how you can find the factorial of a number using loop.

Programming code:
import java.util.*;
public class Factorial
{
public static void main(String[] args)
{
int num;
Scanner sc=new Scanner(System.in);
System.out.println("Input a number:");
num=sc.nextInt();
long factorial = multiplyNumbers(num);
System.out.println("Factorial of " + num + " = " + factorial);
}
public static long multiplyNumbers(int num)
{
if (num >= 1)
return num * multiplyNumbers(num - 1);
else
return 1;
}
}
When you run the program, the output will be:
Input a number: 
6
Factorial of 6 = 720

Initially, the multiplyNumbers() is called from the main() function with 6 passed as an argument.
Since 6 is greater than or equal to 1, 6 is multiplied to the result of multiplyNumbers() where 5 (num -1) is passed. Since, it is called from the same function, it is a recursive call.

In each recursive call, the value of argument num is decreased by 1 until num reaches less than 1.

When the value of num is less than 1, there is no recursive call.

And each recursive calls returns giving us:

6 * 5 * 4 * 3 * 2 * 1 * 1 (for 0) = 720

Online user

Download our android app Download App Submit your query
x

Get Updates On

Java & Premium Programs

Java Solved & Questions

Java Coding easy to use

Proper Coding

Straight Into Your INBOX!

We are going to send you our resources for free. To collect your copy at first, join our mailing list. We are promising not to bother you by sending useless information. So don't miss any updates, stay connected!