如果數字是質數或非質數,則此方法返回true或false。問題是它顯示9,25和49作爲素數。我該如何解決它?如何修復列出9,25和49作爲素數的算法
public static bool IsItPrime(int prime)
{
if (prime == 2)
return true;
else if (prime < 2 || prime % 2 == 0)
return false;
else
{
int limit = (int)Math.Sqrt(prime);
for (int i = 2; i < limit; i++)
{
if (prime % i == 0)
return false;
}
}
return true;
}
if(limit * limit == prime)return false; – Jason 2012-03-01 13:47:05
如果這裏有一些答案適用於您,您應該「接受」它,即單擊旁邊的大綠色空白複選標記。 – 2012-03-01 23:06:25