【发布时间】:2011-07-04 16:47:53
【问题描述】:
这是确切的问题
你被要求计算一些小的正整数的阶乘。
输入:
一个整数t,1
输出:
对于输入时给出的每个整数 n,显示一个值为 n 的行!
示例
示例输入:
4 1 2 5 3示例输出:
1 2 120 6
我已经编写了第 24 号 SPOJ 小阶乘问题,但法官认为答案是错误的。请查看我的代码并帮助我。
class Program
{
static void Main(string[] args)
{
long numOfTestCases=0;
string factForAll = "";
numOfTestCases = Convert.ToInt32(Console.ReadLine());
long[] numArray = new long[numOfTestCases];
for (long i = 0; i < numArray.Length; i++)
{
numArray[i]= Convert.ToInt64(Console.ReadLine());
}
foreach (var item in numArray)
{
long factResult = findFact(item);
factForAll += factResult+"\n";
}
Console.WriteLine();
Console.WriteLine(factForAll);
}
public static long findFact(long number)
{
long factorial = 1;
if (number<=1)
{
factorial = 1;
}
for (long i = 1; i <=number; i++)
{
factorial *= i;
}
return factorial;
}
}
【问题讨论】:
-
您能否发布问题的链接,或者实际问题。
-
因为没有更多信息,我猜这是错误的,因为它没有立即回答问题。您构建一个字符串并在读取所有输入后打印它,并且您不告诉他们如何突破(顺便按 F6,Enter)。