|
From: <sv...@va...> - 2005-09-28 14:49:49
|
Author: njn
Date: 2005-09-28 15:49:40 +0100 (Wed, 28 Sep 2005)
New Revision: 4810
Log:
Make primes.c a bazillion times faster.
Modified:
trunk/auxprogs/primes.c
Modified: trunk/auxprogs/primes.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/auxprogs/primes.c 2005-09-28 11:51:17 UTC (rev 4809)
+++ trunk/auxprogs/primes.c 2005-09-28 14:49:40 UTC (rev 4810)
@@ -1,10 +1,12 @@
=20
#include <stdio.h>
+#include <math.h>
=20
int isprime ( int n )
{
int m;
- for (m =3D 2; m < n; m++)
+ int sqrt_n =3D sqrt(n);
+ for (m =3D 2; m <=3D sqrt_n+1; m++) // +1 in case of obscure roundin=
g error
if ((n % m) =3D=3D 0) return 0;
return 1;
}
|