summaryrefslogtreecommitdiff
path: root/gprimes.c
diff options
context:
space:
mode:
Diffstat (limited to 'gprimes.c')
-rw-r--r--gprimes.c23
1 files changed, 16 insertions, 7 deletions
diff --git a/gprimes.c b/gprimes.c
index 6a38b399d..3d45c1ef7 100644
--- a/gprimes.c
+++ b/gprimes.c
@@ -18,14 +18,11 @@
*/
#include "glib.h"
-
-gint g_primes[] =
+static const guint g_primes[] =
{
11,
- 15,
- 23,
- 35,
- 49,
+ 19,
+ 37,
73,
109,
163,
@@ -59,4 +56,16 @@ gint g_primes[] =
13845163,
};
-gint g_nprimes = sizeof (g_primes) / sizeof (g_primes[0]);
+static const guint g_nprimes = sizeof (g_primes) / sizeof (g_primes[0]);
+
+guint
+g_spaced_primes_closest (guint num)
+{
+ gint i;
+
+ for (i = 0; i < g_nprimes; i++)
+ if (g_primes[i] > num)
+ return g_primes[i];
+
+ return g_primes[g_nprimes - 1];
+}