$show=/label

Best Way To Find the Factorial of a Number In java (Iterative and Recursive)

SHARE:

A quick and practical java program to find the factorial for a given number. Reading the input from the user and example program using a recursive approach and an iterative approach.

1. Overview


In this programming series, Today we are going to learn how to find the factorial for a given number using iterative and recursive approach.


In mathematics, the factorial of a positive integer n, denoted by n!, is the product of all positive integers less than or equal to n: The following is the formulae to find the factorial.

n! =  n * (n-1) * (n-2) * (n-3) * ..... * 3 * 2 * 1

For example,

5! = 5 * 4 * 3 * 2 * 1

An iterative approach is running a loop for n times and executing the same set of code using for loop or while loop whereas in recursive approach is calling the same function from itself for n times.
Java Program to Find the Factorial of a Number using Iterative and Recursive




2. Iterative Java Program to Find Factorial using for loop


In the Iterative approach, Running a for loop for n times where n is the given number.

Example:

package com.java.w3schools.blog.java.program.to;

import java.util.Scanner;

/**
 * 
 * Iterative java program to find the factorial using for loop
 * 
 * @author JavaProgramTo.com
 *
 */
public class FactorialExample {

 public static void main(String[] args) {

  System.out.println("Enter a number : ");
  Scanner scanner = new Scanner(System.in);
  int n = scanner.nextInt();

  int factorialResult = 1;

  // using for loop
  for (int i = 1; i <= n; i++) {

   factorialResult = factorialResult * i;
  }

  System.out.println("Factorial value for " + n + " is : " + factorialResult);

 }

}

Output:

Enter a number : 
5
Factorial value for 5 is : 120

3. Iterative Java Program to Find Factorial using while loop


The above program is implemented using for loop. Now, we will see the same using a while loop. Both fall under the iterative approach.

Example:


package com.java.w3schools.blog.java.program.to;

import java.util.Scanner;

/**
 * 
 * Iterative java program to find the factorial using while loop
 * 
 * @author JavaProgramTo.com
 *
 */
public class FactorialWhileLoopExample {

 public static void main(String[] args) {

  System.out.println("Enter a number : ");
  Scanner scanner = new Scanner(System.in);
  int n = scanner.nextInt();

  int factorialResult = 1;

  // using while loop
  int i = 1;
  while (i <= n) {

   factorialResult = factorialResult * i;
   i++;
  }

  System.out.println("Factorial value for " + n + " using while loop is : " + factorialResult);

 }

}

Output:


Enter a number : 
5
Factorial value for 5 using while loop is : 120

4. A recursive approach to find factorial

The below program is completely done using the recursive method and also an interview question.

package com.java.w3schools.blog.java.program.to;

import java.util.Scanner;

/**
 * 
 * Iterative java program to find the factorial using Recursive concept.
 * 
 * @author JavaProgramTo.com
 *
 */
public class FactorialRecursiveExample {

 public static void main(String[] args) {

  System.out.println("Enter a number : ");
  Scanner scanner = new Scanner(System.in);
  int n = scanner.nextInt();

  int factorialResult = factorial(n);

  System.out.println("Factorial value for " + n + " using recursive logic is : " + factorialResult);

 }

 /**
  *
  * Recursive function for factorial program.
  * 
  * @param n
  * @return
  */
 private static int factorial(int n) {

  if (n == 1)
   return 1;

  return n * factorial(n - 1);
 }

}

This program output will be the same as iterative approaches.

5. Conclusion


In this article, We've seen what is the factorial term in mathematics and what is the formulae. Seen the example programs using iterative and recursive approach.



COMMENTS

BLOGGER

About Us

Author: Venkatesh - I love to learn and share the technical stuff.
Name

accumulo,1,ActiveMQ,2,Adsense,1,API,37,ArrayList,18,Arrays,24,Bean Creation,3,Bean Scopes,1,BiConsumer,1,Blogger Tips,1,Books,1,C Programming,1,Collection,8,Collections,37,Collector,1,Command Line,1,Comparator,1,Compile Errors,1,Configurations,7,Constants,1,Control Statements,8,Conversions,6,Core Java,149,Corona India,1,Create,2,CSS,1,Date,3,Date Time API,38,Dictionary,1,Difference,2,Download,1,Eclipse,3,Efficiently,1,Error,1,Errors,1,Exceptions,8,Fast,1,Files,17,Float,1,Font,1,Form,1,Freshers,1,Function,3,Functional Interface,2,Garbage Collector,1,Generics,4,Git,9,Grant,1,Grep,1,HashMap,2,HomeBrew,2,HTML,2,HttpClient,2,Immutable,1,Installation,1,Interview Questions,6,Iterate,2,Jackson API,3,Java,32,Java 10,1,Java 11,6,Java 12,5,Java 13,2,Java 14,2,Java 8,128,Java 8 Difference,2,Java 8 Stream Conversions,4,java 8 Stream Examples,12,Java 9,1,Java Conversions,14,Java Design Patterns,1,Java Files,1,Java Program,3,Java Programs,114,Java Spark,1,java.lang,4,java.util. function,1,JavaScript,1,jQuery,1,Kotlin,11,Kotlin Conversions,6,Kotlin Programs,10,Lambda,2,lang,29,Leap Year,1,live updates,1,LocalDate,1,Logging,1,Mac OS,3,Math,1,Matrix,6,Maven,1,Method References,1,Mockito,1,MongoDB,3,New Features,1,Operations,1,Optional,6,Oracle,5,Oracle 18C,1,Partition,1,Patterns,1,Programs,1,Property,1,Python,2,Quarkus,1,Read,1,Real Time,1,Recursion,2,Remove,2,Rest API,1,Schedules,1,Serialization,1,Servlet,2,Sort,1,Sorting Techniques,8,Spring,2,Spring Boot,23,Spring Email,1,Spring MVC,1,Streams,31,String,61,String Programs,28,String Revese,1,StringBuilder,1,Swing,1,System,1,Tags,1,Threads,11,Tomcat,1,Tomcat 8,1,Troubleshoot,26,Unix,3,Updates,3,util,5,While Loop,1,
ltr
item
JavaProgramTo.com: Best Way To Find the Factorial of a Number In java (Iterative and Recursive)
Best Way To Find the Factorial of a Number In java (Iterative and Recursive)
A quick and practical java program to find the factorial for a given number. Reading the input from the user and example program using a recursive approach and an iterative approach.
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHFIH6__Rz1i95fd4-7sM1qUYKoWcEEOKqPpD9rs4Fdi7qTshY0dUV0LZCrLDcezZnI-_lzxHiEkSzI3F7mA7AeNl2uZtCX5t7cT572AfcV7kQ-eNsEhYyoAn52Bk_-geagmMQ9f1Ewsc/s640/Java+Program+to+Find+the+Factorial+of+a+Number+using+Iterative+and+Recursive.png
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHFIH6__Rz1i95fd4-7sM1qUYKoWcEEOKqPpD9rs4Fdi7qTshY0dUV0LZCrLDcezZnI-_lzxHiEkSzI3F7mA7AeNl2uZtCX5t7cT572AfcV7kQ-eNsEhYyoAn52Bk_-geagmMQ9f1Ewsc/s72-c/Java+Program+to+Find+the+Factorial+of+a+Number+using+Iterative+and+Recursive.png
JavaProgramTo.com
https://www.javaprogramto.com/2019/12/java-program-to-find-factorial.html
https://www.javaprogramto.com/
https://www.javaprogramto.com/
https://www.javaprogramto.com/2019/12/java-program-to-find-factorial.html
true
3124782013468838591
UTF-8
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share to a social network STEP 2: Click the link on your social network Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy Table of Content