Guest User

Finding the first 10.000 primes in C#

a guest
Aug 5th, 2013
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.         List<int> primes = new List<int>();
  2.         int[] m = new int[] { 1, 3, 7, 9 };
  3.  
  4.         private bool isPrime(int n)
  5.         {
  6.             for (int i = 0; i < primes.Count; i++)
  7.                 if ((primes[i] <= Math.Round(Math.Sqrt(n)) + 1) && (n % primes[i] == 0))
  8.                     return false;
  9.             return true;
  10.         }
  11.  
  12.         private void run()
  13.         {
  14.             int i = 2, d = 1;
  15.             primes.Clear();
  16.             while (primes.Count < 10000)
  17.             {
  18.                 while (i < 10){
  19.                     if (isPrime(i))
  20.                         primes.Add(i);
  21.                     i++;
  22.                 }
  23.                 for (int n = 0; n < 4; n++)
  24.                 {
  25.                     i = d * 10 + m[n];
  26.                     if (isPrime(i))
  27.                         primes.Add(i);
  28.                 }
  29.                 d++;
  30.             }
  31.         }
Advertisement
Add Comment
Please, Sign In to add comment