here's a C++ program to read an integer N and compute its factorial N! using both for and do-while loops.
Using for loop
#include <iostream>
using namespace std;
int main() {
int n;
long long fact = 1;
// Prompt the user to enter a positive integer
cout << "Enter a positive integer: ";
cin >> n;
// Compute the factorial using a for loop
for (int i = 1; i <= n; ++i) {
fact *= i;
}
cout << n << "! = " << fact << endl;
return 0;
}
Output:
Enter a positive integer: 5
5! = 120
5! = 120
Using do-while loop:
#include <iostream>
using namespace std;
int main() {
int n;
long long fact = 1;
int i = 1;
// Prompt the user to enter a positive integer
cout << "Enter a positive integer: ";
cin >> n;
// Compute the factorial using a do-while loop
do {
fact *= i;
++i;
} while (i <= n);
cout << n << "! = " << fact << endl;
return 0;
}
Output:
Enter a positive integer: 5
5! = 120
5! = 120
Explanation:
- The program first declares an integer variable n to store the user input, and a long long variable fact to store the computed factorial.
- Then, the program prompts the user to enter a positive integer n using the cout object and reads the input using the cin object.
- The program uses either a for loop or a do-while loop to compute the factorial of n.
- In the for loop, the program initializes a loop variable i to 1, and iterates the loop while i is less than or equal to n. In each iteration, the program multiplies fact by i and increments i by 1.
- In the do-while loop, the program initializes i to 1 before the loop, and then multiplies fact by i and increments i by 1 inside the loop. The loop iterates while i is less than or equal to n.
- After the loop, the program uses the cout object to print the computed factorial fact using the input value n.
- Finally, the program returns 0 to indicate successful execution.
No comments:
Post a Comment
If you have any doubts, please let me know