我正在尝试为小于1百万的数字创建斐波纳契数列,然后找到序列中每个偶数的总和。
为此,我试图创建一个包含Fibonacci序列的列表,然后使用带有mod的for循环来查找偶数(n%2 = 0)然后添加它们但是在尝试创建Fibonacci序列时我遇到了这个错误:
System.ArgumentOutOfRangeException。
这是我的代码:
{
class Program
{
static void Main(string[] args)
{
// creates a list with the fib[0]= 0 and fib[1] = 1
List<int> fib = new List<int>(new int [] {0, 1});
/// for loop that creates the next element in the fib sequence list by creating the next element by adding the previous two elements.
for (int i = 2; i < 100; i++)
{
fib[i] = (fib[(i - 1)] + fib[(i - 2)]);
}
Console.WriteLine(fib);
Console.ReadLine();
}
}
}
这没有构建错误,所以我无法解决问题。我认为i - 2可能会产生一个负数,这就是问题所在,也就是c#的建议,但我不认为是这种情况。
答案 0 :(得分:1)
列表中只有2个元素,在i=2
次迭代中,它会抛出ArgumentOutOfRangeException
个异常。