- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Haskell Program To Find The Factorial Of A Positive Number
This tutorial discusses writing a program to find the factorial of a positive number in the Haskell programming language.
In this tutorial, we see
Program to find the factorial of a positive number using a recursive function.
Program to find the factorial of a positive number using an inbuilt function product.
Algorithm Steps
Take input or initialize a variable to store a positive integer.
Implement program logic to find the factorial of a number.
Print the resulting factorial.
Method: Find The Factorial Of A Positive Number Using A Recursive Function
Example
Program to find the factorial of a positive number using an inbuilt function product
-- function declaration factorial :: Int->Int -- function definition factorial n = product [1..n] main :: IO() main = do -- initializing variable n let n = 5 -- printing the resulting factorial print ("The factorial of a number " ++ show n ++ " is:") print (factorial n)
Output
"The factorial of a number 5 is:" 120
Description
We declared a function factorial as such it takes an integer argument and returns an integer. In its function definition, the function accepts an integer n as an argument. The function invokes a function product with an argument list of integers from 1 to n generated using the double dot operator.
The function product takes a list of numbers as an argument and returns the product of them. Here the product of all numbers from 1 to n is the factorial of n. The function returns the output of the product function.
In the main function, a variable n is initialized with a number value of 5. The function factorial is invoked with the number n as an argument and returned output is printed using the print function.
Note − The function show takes the argument of a number and returns the parsed string of a number. “++” is an operator to concatenate strings in Haskell.
Method 2: Find The Factorial Of A Positive Number Using An Inbuilt Function Product
Example
Program to find the factorial of a positive number using a recursive function
-- function declaration factorial :: Int->Int -- function definition --base case factorial 0 = 1 factorial n = (n) * factorial (n-1) main :: IO() main = do -- initializing variable n let n = 5 -- printing the resulting factorial print ("The factorial of a number " ++ show n ++ " is:") print (factorial n)
Output
"The factorial of a number 5 is:" 120
Description
A function factorial is declared as such it takes an integer argument and returns an integer. In its function definition, it takes an integer argument n and returns the product of the number n with a recursive call to itself with argument n-1.
The recursive calls are invoked till the functions attain a base case where the argument is 0. In the base-case function returns 1. This function computes the factorial of a number.
In the main function, a variable n is initialized with a number value of 5. The function factorial is invoked with the number n as an argument and returned output is printed using the print function.
Conclusion
In this tutorial, we discussed two ways to implement a program to find the factorial of a positive number in the Haskell programming Language.