data/32-ec-1277190372.sn: 32-input SN found with evolution-cut.
[sort-networks.git] / src / sn_random.c
index c67b451..5a156d2 100644 (file)
@@ -1,5 +1,30 @@
-#define _ISOC99_SOURCE
-#define _POSIX_C_SOURCE 200112L
+/**
+ * libsortnetwork - src/sn_random.c
+ * Copyright (C) 2008-2010  Florian octo Forster
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; only version 2 of the License is applicable.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+ *
+ * Authors:
+ *   Florian octo Forster <ff at octo.it>
+ **/
+
+#ifndef _ISOC99_SOURCE
+# define _ISOC99_SOURCE
+#endif
+#ifndef _POSIX_C_SOURCE
+# define _POSIX_C_SOURCE 200112L
+#endif
 
 #include <stdlib.h>
 #include <stdio.h>
@@ -119,4 +144,9 @@ int sn_bounded_random (int min, int max)
   return (rand);
 } /* int sn_bounded_random */
 
+double sn_double_random (void)
+{
+  return (((double) sn_random ()) / (((double) RAND_MAX) + 1.0));
+} /* double sn_double_random */
+
 /* vim: set shiftwidth=2 softtabstop=2 : */