view src/ploki/random.c @ 5983:e9e46956a506

<oerjan> mk wisdom/welcome.sv//Hej och v\xc3\xa4lkommen till den internationella knutpunkten f\xc3\xb6r esoterisk programmeringsspr\xc3\xa5ksdesign och -drifts\xc3\xa4ttning! F\xc3\xb6r mer information, se v\xc3\xa5r wiki: <http://esolangs.org/>. (F\xc3\xb6r den andra sortens esoterism, pr\xc3\xb6va #esoteric p\xc3\xa5 EFnet eller DALnet.)
author HackBot
date Mon, 14 Sep 2015 17:49:06 +0000
parents ac0403686959
children
line wrap: on
line source

#include "config.h"
#include "random.h"

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

void randseed(void) {
	unsigned seed;

	seed = time(NULL);
	#if HAVE_DEV_URANDOM_P
	{
		FILE *fp;

		if ((fp = fopen("/dev/urandom", "rb"))) {
			fread(&seed, sizeof seed, 1, fp);
			fclose(fp);
		}
	}
	#endif
	srand(seed);
}

double randval(void) {
	return rand() / (RAND_MAX + 1.0);
}