目前我有这段代码,它的作用是计算阶乘。
int numberInt = int.Parse(factorialNumberTextBox.Text);
for (int i = 1; i < numberInt; i++)
{
numberInt = numberInt * i;
}
factorialAnswerTextBox.Text = numberInt.ToString();
出于某种原因它不能工作,我不知道为什么。例如,我将输入3并得到答案-458131456,这似乎非常奇怪。
感谢任何帮助。
numberInt
的循环条件。请注意不要在循环内部改变numberInt
变量的值。 - I4Vint
,您只能计算到12的阶乘。也许考虑改用64位的long
。编辑:好吧,long
最多只能计算到20的阶乘。:) 编辑:来试试BigInteger
! - Chris Sinclair