Skip to content

Instantly share code, notes, and snippets.

@winkel
Created December 30, 2010 19:07
Show Gist options
  • Save winkel/760149 to your computer and use it in GitHub Desktop.
Save winkel/760149 to your computer and use it in GitHub Desktop.
Prime numbers
class Sieve
{
public static List<int> GetPrimeNumbers(int maxValue)
{
List<int> primeNumbers = new List<int>(new int[] { 2, 3, 5 });
for (var testValue = primeNumbers.Max() + 1; testValue <= maxValue; testValue++)
{
int sqrtTestValue = (int)Math.Floor(Math.Sqrt(testValue));
bool isPrime = true;
foreach (var primeNumber in primeNumbers)
{
if (primeNumber > sqrtTestValue)
break;
if ((testValue % primeNumber) == 0)
{
isPrime = false;
break;
}
}
if (isPrime)
primeNumbers.Add(testValue);
}
return primeNumbers;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment