Files
2026-04-07 03:11:52 +07:00

45 lines
989 B
C#

using System;
namespace FishNet.Utility
{
/// <summary>
/// Finds the next prime number on or after a value.
/// </summary>
public static class PrimeNumberFinder
{
public static uint GetNextPrime(uint number)
{
uint candidate = number < 2 ? 2 : number;
while (!IsPrime(candidate))
candidate++;
return candidate;
}
/// <summary>
/// Returns if a number is prime.
/// </summary>
private static bool IsPrime(uint number)
{
if (number < 2)
return false;
if (number == 2)
return true;
if (number % 2 == 0)
return false;
int limit = (int)Math.Sqrt(number);
for (int i = 3; i <= limit; i += 2)
{
if (number % i == 0)
return false;
}
return true;
}
}
}