In this tutorial, you shall learn how to write a program to find the factorial of a given number in Kotlin.
Kotlin – Factorial
To find the factorial of a given number in Kotlin, we can use recursion function.
The factorial of a number n
is defined as the following.
n! = 1*2*3*...*n
Program
1. Find factorial using recursion technique
In the following program, we read a number from user, calculate the factorial of this number using recursion function. We define the recursion function factorial()
. This function returns 1
if the argument is zero, else it returns the product of given number
and the factorial of the (number-1)
.
Main.kt
fun factorial(n: Int): Int {
return if (n == 0) {
1
} else {
n * factorial(n - 1)
}
}
fun main() {
print("Enter an integer : ")
val num = readLine()!!.toInt()
val result = factorial(num)
println("$num! is $result.")
}
Output #1
Enter an integer : 5
5! is 120.
Output #2
Enter an integer : 10
10! is 3628800.
2. Find factorial using For loop statement
In the following program, we use For loop to calculate the factorial of given number.
Main.kt
fun factorial(n: Int): Int {
var result = 1
for (i in 1 until n+1) {
result *= i
}
return result
}
fun main() {
print("Enter an integer : ")
val num = readLine()!!.toInt()
val result = factorial(num)
println("$num! is $result.")
}
Output #1
Enter an integer : 5
5! is 120.
Output #2
Enter an integer : 10
10! is 3628800.
Reference tutorials for the program
Conclusion
In this Kotlin Tutorial, we learned how to find the factorial of a given number using recursion technique, or For loop statement.