From 8cb4e3653bbaaf8a445c30d63fc6bad4c5164e87 Mon Sep 17 00:00:00 2001 From: "Kartik K. Agaram" Date: Sat, 23 May 2015 14:39:10 -0700 Subject: 1438 --- 064random.cc | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 064random.cc (limited to '064random.cc') diff --git a/064random.cc b/064random.cc new file mode 100644 index 00000000..98ec3156 --- /dev/null +++ b/064random.cc @@ -0,0 +1,42 @@ +:(before "End Primitive Recipe Declarations") +RANDOM, +:(before "End Primitive Recipe Numbers") +Recipe_number["random"] = RANDOM; +:(before "End Primitive Recipe Implementations") +case RANDOM: { + products.resize(1); + // todo: replace rand() + products.at(0).push_back(rand()); + break; +} + +:(before "End Primitive Recipe Declarations") +MAKE_RANDOM_NONDETERMINISTIC, +:(before "End Primitive Recipe Numbers") +Recipe_number["make-random-nondeterministic"] = MAKE_RANDOM_NONDETERMINISTIC; +:(before "End Primitive Recipe Implementations") +case MAKE_RANDOM_NONDETERMINISTIC: { + srand(time(NULL)); + break; +} + +:(before "End Primitive Recipe Declarations") +ROUND, +:(before "End Primitive Recipe Numbers") +Recipe_number["round"] = ROUND; +:(before "End Primitive Recipe Implementations") +case ROUND: { + assert(scalar(ingredients.at(0))); + products.resize(1); + products.at(0).push_back(rint(ingredients.at(0).at(0))); + break; +} + +:(scenario round_to_nearest_integer) +recipe main [ + 1:number <- round 12.2 +] ++mem: storing 12 in location 1 + +:(before "End Includes") +#include -- cgit 1.4.1-2-gfad0