コード例 #1
0
ファイル: euler007.cs プロジェクト: PreludeAndFugue/IronEuler
        public static void Main(string[] args)
        {
            PrimesList primes = new PrimesSieve(110000);

            // The 10001st prime is at index 10000 in the list.
            Console.Out.WriteLine("10001st prime: {0}", primes[10000]);

            Console.Write("Press any key to continue . . . ");
            Console.ReadKey(true);
        }
コード例 #2
0
ファイル: euler010.cs プロジェクト: PreludeAndFugue/IronEuler
 public static void Main(string[] args)
 {
     long answer = 0;
     PrimesList primes = new PrimesSieve(2000000);
     foreach (int p in primes)
     {
         answer += p;
     }
     Console.Out.WriteLine("Answer: {0}", answer);
     Console.Write("Press any key to continue . . . ");
     Console.ReadKey(true);
 }
コード例 #3
0
ファイル: euler003.cs プロジェクト: PreludeAndFugue/IronEuler
        public static void Main(string[] args)
        {
            // The first 10,000 primes
            PrimesSieve primes = new PrimesSieve(104729);

            List<int> primeFactors = new List<int>();

            List<int>.Enumerator p = primes.GetEnumerator();
            long n = 600851475143;
            while (n != 1) {
                p.MoveNext();
                while (n%p.Current == 0 && n != 1)
                {
                    primeFactors.Add(p.Current);
                    n /= p.Current;
                }
            }

            Console.Out.WriteLine("Answer: {0}", primeFactors[primeFactors.Count - 1]);

            Console.Out.WriteLine("Press any key to continue . . . ");
            Console.In.ReadLine();
        }
コード例 #4
0
 public void TestFirst100()
 {
     PrimesSieve primes = new PrimesSieve(541);
     for (int i = 0; i < 100; i++)
     {
         Assert.AreEqual(small_primes[i], primes[i]);
     }
 }