From 53d5a280d243a05aabb278351c55bd3e08943c1f Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Sun, 4 Oct 2009 00:39:32 +0000 Subject: improve portability, replace arc4random() with srandom()/random(), remove setterm() --- weasel.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/weasel.c b/weasel.c index ef86a16..49d35dc 100644 --- a/weasel.c +++ b/weasel.c @@ -22,7 +22,7 @@ #include #include #include -#include +#include #include #define NUM_THREADS 10 @@ -57,7 +57,7 @@ struct creature { char rndchar() { - return alphabet[arc4random() % (sizeof(alphabet) - 1)]; + return alphabet[random() % (sizeof(alphabet) - 1)]; } float @@ -116,7 +116,7 @@ printpopulation(int maximal) struct creature * pickrandom(int population) { - int n = arc4random() % population; + int n = random() % population; cp = SLIST_FIRST(&generation); while (n-- > 0 && cp) @@ -153,10 +153,10 @@ intercourse(int population, int mutationsrate) qsort(c, 3, sizeof(struct creature *), cmp); for (i = 0; i < c[2]->length; i++) { - if (arc4random() % mutationsrate == 0) + if (random() % mutationsrate == 0) c[2]->genom[i] = rndchar(); else - c[2]->genom[i] = c[arc4random() % 2]->genom[i]; + c[2]->genom[i] = c[random() % 2]->genom[i]; } c[2]->genom[i] = '\0'; c[2]->fitness = calculatefitness(c[2]->genom, c[2]->length); @@ -222,7 +222,7 @@ main(int argc, char **argv) aim = argc ? strdup(*argv) : defaim; initscr(); - setterm("vt220"); + srandom(time(NULL)); initpopulation(strlen(aim), population); args.population = population; -- cgit v1.2.3