计算第一个 1000 位斐波纳契数
包括 using System.Numerics
并将 System.Numerics
的引用添加到项目中。
using System;
using System.Numerics;
namespace Euler_25
{
class Program
{
static void Main(string[] args)
{
BigInteger l1 = 1;
BigInteger l2 = 1;
BigInteger current = l1 + l2;
while (current.ToString().Length < 1000)
{
l2 = l1;
l1 = current;
current = l1 + l2;
}
Console.WriteLine(current);
}
}
}
这个简单的算法迭代 Fibonacci 数,直到它达到一个至少 1000 个十进制数字的长度,然后打印出来。这个值远远大于 ulong
可以容纳的值。
从理论上讲,BigInteger
类的唯一限制是应用程序可以使用的 RAM 量。
注意:BigInteger
仅适用于 .NET 4.0 及更高版本。