15,882,388 members
Articles / Programming Languages / C#
Tip/Trick

# Calculate the Factorial of an Integer in C#

Rate me:
4 Oct 2011CPOL 92K   4   10
I looked for a while over the net for a way to easily calculate a factorial value (n!), but nothing was helping and I saw some VERY long and drawn out solutions. Well, it wasn't that hard after I thought about it for a while and this was the easiest solution I could come up with. I hope it helps!

The code below is what I put in my event handler. The comment lists my class variables used.

C#
```int Factorial(int input)
{

if (input > 0)
{
count = 1;
while (count <= input)
{
if (count == 1)
{
count++;
}
else
{
count++;
}
}
}
else
{
MessageBox.Show("Please enter only a positive integer.");
}

}```

 First Prev Next
 Linq Version raulito17-Oct-16 5:30 raulito 17-Oct-16 5:30
 Check this one Mathew Sachin24-Dec-14 4:26 Mathew Sachin 24-Dec-14 4:26
 Fail for higher order numbers CyberSamuraiii13-May-14 7:21 CyberSamuraiii 13-May-14 7:21
 Zero factorial is not undefined Yitzi916-Aug-13 3:06 Yitzi9 16-Aug-13 3:06
 Zero factorial is not undefined, it is equal to one. What about? C# ```int Factorial(int input) { if (input < 0) throw new ArgumentOutOfRangeException("Factorial is only defined for non-negative integers."); int answer = 1; while (input > 1) answer *= input--; return answer; }```
 Slight Improvement markbb3322-Feb-13 18:36 markbb33 22-Feb-13 18:36
 My vote of 1 fujiwara129-Oct-12 3:26 fujiwara1 29-Oct-12 3:26
 Reason for my vote of 1 Really you couldn't find any iterati... Kerem Kat12-Oct-11 8:55 Kerem Kat 12-Oct-11 8:55
 I've reworked the method to make it more generic and cleaner... Chris Maunder4-Oct-11 2:47 Chris Maunder 4-Oct-11 2:47